Part Number Hot Search : 
S1220 NMH0505S ASI2005 30201 KA75270Z GDPXA5 05S12 HCF40
Product Description
Full Text Search
 

To Download Z80382 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  ds97z382000 p r e l i m i n a r y 1 1 p reliminary p roduct s pecification Z80382, z8l382 1 h igh -p erformance d ata c ommunications p rocessors features n embedded z380 a microprocessor e maintains object code compatibility with z80 and z180 a microprocessors e enhanced instruction set for 16-bit operation e 16 mb linear addressing e two clock cycle instruction execution minimum e four on-chip register banks e bc/de/hl/ix/iy augmented to 32 bits e clock divide-by-two and multiply-by-two options e fully static cmos design with low-power standby mode e 16-bit internal bus e dynamic bus sizing (8/16-bit inter-operability) n 16550 mimic with i/o mailbox, dma mailbox, and 16 ma bus drive n three hdlc synchronous serial channels e serial data rate of up to 10 mbps n gci/scit bus interface n eight advanced dma channels with 24-bit addressing n plug-and-play isa interface n pcmcia interface n two enhanced ascis (uarts) with 16-bit baud rate generators (brg) n clocked serial i/o channel (csio) for use with serial memory n two 16-bit timers with flexible prescalers n three memory chip selects with wait-state generators n watch-dog timer (wdt) n up to 32 general-purpose i/o pins n dc to 20 mhz operating frequency @ 5.0v n dc to 10 mhz operating frequency @ 3.3v n 144-pin qfp and vqfp style packages general description the Z80382 (z382) is designed to address high-end data communication applications such as digital modems (is- dn, gsm, mobitex & modacom), xdsl and analog mo- dems (v.34 and beyond). the z382 provides a perfor- mance upgrade to existing z80- and z18x-based designs by utilizing the increased bandwidth of the 380c proces- sor. the z8l382 is a low voltage version of the device. note: in this document the notation 380c denotes the z380-compatible cpu core which is embedded in the z382. the 380c microprocessor is a high-performance proces- sor with fast and efficient throughput and increased mem- ory addressing capabilities. the 380c offers a continuing growth path for present z80- or z18x-based designs, while maintaining z80 and z180 object code compatibility. its en- hancements include added instructions, expanded16 mb address space and flexible bus interface timing. in the 380c, the basic addressing modes of the z80 micro- processor have been augmented to include stack pointer relative loads and stores, 16-bit and 24-bit indexed off- sets, and more flexible indirect register addressing. inter- nally, all of the addressing modes allow up to 32-bit linear addressing; however, because the z382 has only 24 ad- dress pins, it can only address 16 mb of memory.
Z80382/z8l382 high-performance data communications processors zilog 2 p r e l i m i n a r y ds97z382000 general description (continued) other additions to the instruction set include a full comple- ment of 16-bit arithmetic and logical operations, 16-bit i/o operations, multiply and divide, and a complete set of reg- ister-to-register loads and exchanges. the 380c register file includes alternate versions of the ix and iy registers. there are four banks of registers in the 380c, along with instructions for switching among them. all of the 16-bit register pairs and index registers in the ba- sic z80 microprocessor register file are expanded to 32 bits. the z382 includes dynamic bus sizing to allow any mix of 16- and 8-bit memory, and i/o devices in a system. one application for this capability would be to copy code from a low-cost, slow 8-bit rom to 16-bit ram, from which it can be executed at much higher speeds. memory bus sizes can be configured internally by software to eliminate the need for external logic to drive msize. some features that have traditionally been handled by ex- ternal peripherals have been incorporated in the z382. these on-chip peripherals reduce system chip count and interconnections on the external bus. these peripherals, il- lustrated in the z382 block diagram in figure 1, are sum- marized below. hdlc synchronous channels. three hdlc channels operate at serial data rates of up to 10 mbps and feature 8-byte receive and transmit fifos. these can be used for modems, general data communications, and isdn. the isdn can be handled separately or through the gci/scit bus interface. hdlc channels always transfer data through the dma channels. a transparent mode is select- able. two of the hdlc cells can be pin multiplexed with the ascis (uarts) to provide dynamically switchable (async-sync) dte interfaces. dma channels . the eight dma channels provide 24-bit memory addressing and can transfer memory block sizes of up to 64 kb (16-bits). these dma channels can be dy- namically assigned to serve the hdlc ports, mimic com port, host dma mailbox, or ascis in any mixture. linked list operation allows all hdlc transmitters and receivers to operate at or above e1 rates simultaneously without load- ing the bus bandwidth. 16550 mimic . provides connection to a pc isa bus and emulation of the 16550 uart register set. improvements include 16 ma output drivers and internal com port ad- dress decoding to reduce external pc interface compo- nents. asci . two flexible asynchronous serial channels with baud rate generators, modem control and status. csio . a clocked serial i/o channel which can be used for serial memory interface. timers . two 16-bit counter/timers with flexible prescalers for wide-range timing applications. gci/scit bus interface . a common interface to isdn in- terface devices. internal signals from this module can be connected to the hdlc channels to provide b-channels and d-channel for isdn. plug-and-play isa interface . provides auto-configura- tion in isa (at bus) applications. pcmcia interface . provides connectivity to a pcmcia bus. 32-bit general-purpose i/o . for non-pc add-in applica- tions, four 8-bit ports are provided for general- purpose i/o. in isa or pcmcia applications, the pins from two of the ports are reallocated to host bus signals and are not avail- able. pins from the other two ports are selectively multi- plexed with on-chip peripheral functions (ascis, csi/o, prt). these pins are individually programmable for in- put/output mode. i/o chip selects. two i/o chip selects are provided to support i/o access of external peripherals. each has a pro- grammable base address and provides i/o decode sizes ranging from 8 to 512 bytes. rom/ram chip selects with wait-state generators . chip select outputs are provided to decode memory ad- dresses and provide memory chip enables. each chip se- lect has its own wait state generator to allow use of mem- ories with different speeds. watch-dog timer . a watch-dog timer (wdt) with a wide range of time-constants prevents code runaway and pos- sible resulting system damage. the /reset input can be forced as an output upon the terminal count of the wdt. this allows external peripherals to be reset along with the z382.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 3 1 figure 1. Z80382 block diagram 8 8 8 16 32-bit gp i/o dual asci and csio dual timer and wdt 380c pcmcia interface and attribute ram 16550 mimic interface pc dma and i/o interface plug and play isa interface dma 0 dma 1 dma 2 dma 3 dma 4 dma 5 dma 6 dma 7 channel 0 hdlc channel channel 1 hdlc channel channel 2 hdlc channel gci/scit serial bus p c m c i a i s a b u s 8 z380-compatible high performance processor core and configuration registers chip select and wsg logic external memory (rom/ram) 8
Z80382/z8l382 high-performance data communications processors zilog 4 p r e l i m i n a r y ds97z382000 Z80382 pin description figure 2. Z80382 144-pin qfp and vqfp pin description 70 65 60 55 50 45 40 110 115 120 125 130 135 140 144 pc2//txen2/tout /cts1//trefc /cts0//trefa /dcd0//trefr vdd ioclk /iorq /m1 /msize /bhen /blen /stnby /halt vss /iowr /mwr /iord /mrd busclk clki clko /wait vdd /busack /busreq /reset /nmi /int0 /int1 /int2 /int3 vss a23 a22 a21 a20 pd4/ha4 pd5/ha5 pd6/ha6 pd7/ha7 vss rxa1/ha8 dcd1/ha9 cka1/ha10 cks/ha11 rxs/haen//pcreg txs//hdoen//inpack /cts0//hrd//pciord /cts1//hwr//pciowr vdd pb0/cks pb1/rxs pb2/txs pb3/rxa1 pb4/txa1 pb5/cka0 pb6/rxa0 pb7/txa0 vss pc3/cka1 pc4/ieo pc5/iei tout//iocs2 pc6//iocs1 pc7//ramcsh /ramcsl /romcs vdd d0 d1 d2 d3 a19 a18 a17 a16 vdd a15 a14 a13 a12 a11 a10 a9 a8 vss a7 a6 a5 a4 a3 a2 a1 a0 vdd d15 d14 d13 d12 d11 d10 d9 d8 vss d7 d6 d5 d4 fsc/rxd2 dd/txd2 dcl/rxc2/bcl2 du/txc2/fsc2 vss rxd1/rxa1 txd1/txa1 rxc1/bcl1/pc1 txc1/fsc1/cka1 rxd0/rxa0 txd0/txa0 rxc0/bcl0/pc0 txc0/fsc0/cka0 vdd /txen1//rts1 /txen0//rts0 cka0/hdrq1/pcreset txa0/hdrq0//pcce1 rxa0//hdak1//pcoe /dcd0//hdak0//pcwe /rts0/hint2/stschg txa1/hint1//pcirq vss pa0/hd0 pa1/hd1 pa2/hd2 pa3/hd3 pa4/hd4 pa5/hd5 pa6/hd6 pa7/hd7 vdd pd0/ha0 pd1/ha1 pd2/ha2 pd3/ha3 5 1015 2025 1 100 95 90 85 80 105 Z80382 144-pin qfp and vqfp 30 35 75
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 5 1 absolute maximum ratings stresses greater than those listed under absolute maxi- mum ratings may cause permanent damage to the de- vice. this is a stress rating only; operation of the device at any condition above those indicated in the operational sec- tions of these specifications is not implied. exposure to ab- solute maximum rating conditions for extended periods may affect device reliability. standard test conditions the dc characteristics which follow apply for the following standard test conditions, unless otherwise noted. all volt- ages are referenced to gnd (0v). positive current flows into the referenced pin (figure 3, test load diagram). n operating temperature range: e standard: 0 c to 70 c n voltage supply range: e +4.5v v dd +5.5v (Z80382 versions) e +3.0v v dd +3.6v (z8l382 versions) all ac parameters assume a load capacitance of 50 pf. add 10 ns delay for each 50 pf increase in load up to a maximum of 150 pf for the data bus and 100 pf for ad- dress and control lines. ac timing measurements are ref- erenced to 1.5 volts (except for clock, which is referenced to the 10% and 90% points). maximum capacitive load for phi is 125 pf. symbol description value unit v dd supply voltage -0.3 to +7.0 v v in input voltage -0.3 to v dd +0.3 v t opr operating temp 0 to +70 c t stg storage temp -55 to +150 c figure 3. test load diagram i ol = 2 ma 100 pf 1.4v i oh = 250 m a
Z80382/z8l382 high-performance data communications processors zilog 6 p r e l i m i n a r y ds97z382000 dc characteristics pin numbers and input/output classifications pin input class 1 output class 1 pin number(s) /bhen o 118 /blen o 119 /busack o 132 /busreq i 133 /cts0//hrd//pciord i 61 /cts0//trefa i o 111 /cts1//hwr//pciowr i 60 /cts1//trefc i o 110 /dcd0//hdak0//pcwe i 89 /dcd0//trefr i o 112 /dcd1/ha9 i 66 /halt o 121 /int0-3 r 136 - 139 /iord i 3 125 /iorq i 3 115 /iowr i 3 123 /m1 i 3 116 /mrd i 3 126 /msize i d 117 /mwr i 3 124 /nmi r 135 /ramcsl o 43 /reset r d 134 /romcs o 42 /rts0/hint2/stschg h 88 /stnby o 120 /txen1-0//rts1-0 o 94 -93 /wait i d 130 a23-0 i 3 141 - 144, 1 - 4, 6 - 13, 15 - 22 busclk h 127 cka0/hdrq1/pcreset i h 92 cka1/ha10 i 3 65 cks/ha11 i 3 64 clki r 128 clko o 129 d15-0 i 3 24 - 31, 33 - 40 dcl/rxc2/bcl2 i 106 dd/txd2 i d (dd) o (txd2) 107 du/txc2/fsc2 i d (du) o (txc2, fsc2) 105 fsc/rxd2 i 108 ioclk i o 114 pa7-0/hd7-0 i h 78 -85 pb0/cks i 3 58
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 7 1 pb1/rxs i 3 57 pb2/txs i 3 56 pb3/rxa1 i 3 55 pb4/txa1 i 3 54 pb5/cka0 i 3 53 pb6/rxa0 i 3 52 pb7/txa0 i 3 51 pc2//txen2/tout i 3 109 pc3/cka1 i 3 49 pc4/ieo i 3 48 pc5/iei i 3 47 pc6//iocs1 i 3 45 pc7//ramcsh i 3 44 pd7-0/ha7-0 i 3 69 - 76 rxa0//hdak1//pcoe i d 90 rxa1/ha8 i 3 67 rxc1-0/bcl1-0/pc1-0 i 3 101, 97 rxd1-0/rxa1-0 i o 103, 99 rxs/haen//pcreg i d 63 tout//iocs2 3 46 txa0/hdrq0//pcce1 i h 91 txa1/hint1//pcirq h 87 txc1-0/fsc1-0/cka1-0 i 3 100, 96 txd1-0/txa1-0 o 102, 98 txs//hdoen//inpack o 62 v dd 5, 23, 41, 59, 77, 95, 113, 131 v ss 14, 32, 50, 68, 86, 104, 122, 140 note: 1. characteristics of each pin are listed in terms of the classifications in the dc characteristics tables 1 and 2 which follow . pin input class 1 output class 1 pin number(s)
Z80382/z8l382 high-performance data communications processors zilog 8 p r e l i m i n a r y ds97z382000 dc characteristics (continued) specifications apply over standard operating conditions unless otherwise noted . table 1. output class characteristics output class (1) type v ol max. v oh min. c out max. (2) o totem pole 0.4v @ i ol = 2.0 ma v dd - 1.2v @ i oh = 200 m a 15 pf slew rate = 0.33 v/ns min @ c load = 50 pf 3 tri-state 0.4v @ i ol = 2.0 ma v dd - 1.2v @ i oh = 200 m a slew rate = 0.33 v/ns min @ c load = 50 pf h high drive tri-state 0.4v max @ i ol = 16 ma, v dd = 5v 2.4v min @ i oh = 5ma, v dd = 5v 15 pf slew rate = 0.33 v/ns min @ c load = 50 pf d open-drain 0.4v max @ i ol = 16 ma -- 15 pf notes: 1. the pin numbers and input/output classifications table in the previous section identifies the specific output pins in each class. 2. applies to output only or i/o. table 2. input class characteristics input class (1) v il max. (Z80382) v il max. (z8l382) v ih min. (Z80382) v ih min. (z8l382) minimum hysteresis i 0.8v 0.6v 2.0v 2.0v 0.4v i i = 10 m a max, v i = 0 to 5v (includes leakage if i/o) c in = 5 pf max (if input only, see output type if i/o) note: inputs of this type include a weak-latch circuit, except that a register bit can disable those for pins pb7-0. r 0.4v 0.4v v dd - 0.6v v dd - 0.3v 0.4v i i = 10 m a max, v i = 0 to 5v c in = 5 pf max note: inputs of this type except clki include a weak-latch circuit. notes: 1. the pin numbers and input/output classifications table in the previous section identifies the specific input pins in each cla ss.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 9 1 table 3. dc electrical characteristics symbol item condition min. typ. max. unit v ih input high voltage see table 2 v v il input low voltage see table 2 v v oh output high voltage see table 1 v v ol output low voltage see table 1 v i il input leakage current, all inputs except clki, clko v in = 0.5v to v dd - 0.5v 1.0 m a i tl tri-state leakage current v in = 0.5 to v dd - 0.5 1.0 m a i dd v dd supply current (1, 3) normal operation busclk = 10 mhz v dd = 3.3v 75 ma busclk = 10 mhz v dd = 5v 90 ma busclk = 20 mhz v dd = 5v 150 ma i dds v dd supply current standby mode (1, 2, 3) busclk = 10 mhz v dd = 3.3v 50 m a busclk = 10 mhz v dd = 5v 50 m a busclk = 20 mhz v dd = 5v 50 m a notes: 1. v ih min = v dd -1.0v, v il max = 0.8v. all output terminals are at no load. 2. on-chip peripherals with independent clocks are inactive (not being clocked). 3. busclk is the internal processor clock frequency.
Z80382/z8l382 high-performance data communications processors zilog 10 p r e l i m i n a r y ds97z382000 ac characteristics 380c processor timing (see figure 4) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol parameter Z80382 z8l382 notes unit min. max. min. max. t1 clock cycle time 25 dc 50 dc 1 ns t2 clock high time 10 20 1 ns t3 clock low time 10 20 1 ns t4 clock rise time 3 5 1 ns t5 clock fall time 3 5 1 ns t6 clki low to busclk high delay 25 35 ns t7 clki high to busclk low delay 25 35 ns t8 busclk high to output valid 10 10 2 ns t9 busclk low to output valid 10 10 3 ns t10 input setup to busclk rise 10 15 4 ns t11 input hold from busclk high 0 0 4 ns t12 /busreq setup to busclk fall 10 15 5 ns t13 /busreq hold from busclk low 0 0 5 ns t14 /wait setup to busclk rise 10 15 6 ns t15 /wait hold from busclk high 0 0 6 ns t16 /wait setup to busclk fall 15 15 6 ns t17 /wait hold from busclk low 0 0 6 ns t18 /nmi width low 15 15 ns t19 /reset width low 10 10 t1 t20 /int1, /int2, /int3 low width 15 15 7 ns t21 /int1, /int2, /int3 high width 15 15 7 ns notes: 1. applies to the oscillator or external clock input. the maximum internal clock frequency (busclk) is limited to 20 mhz for the Z80382 and 10 mhz for the z8l382. input clock frequencies greater than these values must use the clki/2 mode for creating busclk. this is the default state after reset. 2. applies to a23-0, /bhen, /blen, ioclk, /iocs1, /iocs2, /romcs, /ramcsl, /ramcsh, /m1, /busack, /mrd, /mwr, /tre- fa, /trefc, /trefr 3. applies to d15-0, /halt, /stnby, /iorq, /iord, /iowr, /msize, /busack, /mrd, /mwr, /trefc, /trefr 4. applicable for data bus and /msize inputs. 5. /busreq can also be asserted/deasserted asynchronously. 6. external waits asserted at /wait input. 7. in edge-triggered mode.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 11 1 figure 4. 380c processor timing clk output output input input input input t1 t3 t2 t4 t5 t7 t8 t9 t10, t14 t12, t16 t18, t19 t20 t6 t11, t15 t13, t17 busclk t21
Z80382/z8l382 high-performance data communications processors zilog 12 p r e l i m i n a r y ds97z382000 ac characteristics (continued) host - pcmcia attribute memory read timing (see figure 5) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol Z80382 z8l382 unit parameter min. max. min. max. t22 address setup to /pcce1 fall 15 20 ns t23 address setup to /pcoe fall 15 20 ns t24 address hold from /pcce1 high 5 5 ns t25 address hold from /pcoe high 5 5 ns t26 /pcce1 low to data active 0 0 ns t27 /pcoe low to data active 0 0 ns t28 /pcce1 low to data valid 60 5 60 ns t29 /pcoe low to data valid 60 5 60 ns t30 data invalid from /pcce1 high 5 ns t31 data invalid from /pcoe high 5 ns t32 data tri-state from /pcce1 high 20 20 ns t33 data tri-state from /pcoe high 20 20 ns note: timings also apply for reads from registers located in the attribute memory space. figure 5. host - pcmcia attribute memory read timing t28 t23 t22 t26 t29 t27 t32 t33 ha9-0 pcreg /pcce1 /pcoe hd7-0 t30 t31 t24 t25
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 13 1 host - pcmcia attribute memory write timing (see figure 6) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol Z80382 z8l382 unit parameter min. max. min. max. t34 address setup to /pcce1 fall 30 35 ns t35 address setup to /pcwe fall 30 35 ns t36 address hold from /pcce1 high 10 10 ns t37 address hold from /pcwe high 10 10 ns t38 data setup to /pcce1 rise 20 20 ns t39 data setup to /pcwe rise 20 20 ns t40 data hold from /pcce1 high 10 10 ns t41 data hold from /pcwe high 10 10 ns note: timings also apply for writes to registers located in the attribute memory space. figure 6. host - pcmcia attribute memory write timing t35 t34 t38 t39 ha9-0 pcreg /pcce1 /pcwe hd7-0 t40 t41 t36 t37
Z80382/z8l382 high-performance data communications processors zilog 14 p r e l i m i n a r y ds97z382000 ac characteristics (continued) host - pcmcia i/o read timing (see figure 7) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol parameter Z80382 z8l382 units min. max. min. max. t42 address setup to /pciord fall 50 50 ns t43 /pcreg setup to /pciord fall 5 5 ns t44 /pcce1 setup to /pciord fall 5 5 ns t45 /pciord low width 125 125 ns t46 /inpack low from /pciord low 10 10 ns t47 data valid from /pciord low 50 50 ns t48 data invalid from /pciord high 5 5 ns t49 /inpack high from /pciord high 10 10 ns t50 /pcce1 hold from /pciord high 10 10 ns t51 /pcreg hold from /pciord high 10 10 ns t52 address hold from /pciord high 10 10 ns t53 /pciord low to data active 0 0 ns t54 data tri-state from /pciord high 20 20 ns figure 7. host - pcmcia i/o read timing ha[9:0] /pcreg /pcce1 /pciord /inpack hd[7:0] t42 t43 t44 t47 t45 t52 t51 t50 t49 t46 t48 t53 t54
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 15 1 host - pcmcia i/o write timing (see figure 8) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol parameter Z80382 z8l382 units min. max. min. max. t55 address setup to /pciowr fall 50 50 ns t56 /pcreg setup to /pciowr fall 5 5 ns t57 /pcce1 setup to /pciowr fall 5 5 ns t58 /pciowr low width 125 125 ns t59 data setup to /pciowr rise 35 35 ns t60 data hold from /pciowr high 20 20 ns t61 /pcce1 hold from /pciowr high 10 10 ns t62 /pcreg hold from /pciowr high 10 10 ns t63 address hold from /pciowr high 10 10 ns figure 8. host pcmcia i/o write timing ha[9:0] /pcreg /pcce1 /pciowr hd[7:0] t55 t56 t57 t59 t58 t63 t62 t61 t60
Z80382/z8l382 high-performance data communications processors zilog 16 p r e l i m i n a r y ds97z382000 ac characteristics (continued) timer output timing (see figure 9) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol parameter Z80382 z8l382 units min. max. min. max. t64 busclk low to tout valid 20 20 ns figure 9. timer output timing busclk tout t64 timer clock (internal)
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 17 1 csi/o receive/transmit timing (see figure 10) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs . symbol parameter Z80382 z8l382 units min. max. min. max. t66 cks low to txs valid 40 40 ns t67 rxs setup to cks rise 20 20 ns t68 rxs hold from cks high 5 5 ns t71 cks external clock period 50 50 ns figure 10. csi/o receive and transmit timing t67 t66 rxs txs cks t71 t68
Z80382/z8l382 high-performance data communications processors zilog 18 p r e l i m i n a r y ds97z382000 ac characteristics (continued) asci transmitter timing (see figure 11) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol parameter Z80382 z8l382 units min. max. min. max. t72 external transmit clock period 50 50 ns t73 external transmit clock low width 30 30 ns t74 external transmit clock high width 30 30 ns t75 external transmit clock fall time 5 10 ns t76 external transmit clock rise time 5 10 ns t77 cka low to txa data valid 20 30 ns figure 11. asci transmitter timing cka txa t72 t73 t74 t76 t75 t77 (input)
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 19 1 asci receiver timing (see figure 12) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol parameter Z80382 z8l382 units min. max. min. max. t79 external receive clock period 50 50 ns t80 external receive clock low time 30 30 ns t81 external receive clock high time 30 30 ns t82 external receive clock fall time 5 10 ns t83 external receive clock rise time 5 10 ns t84 rxa setup to cka rise 20 25 ns t85 rxa hold from cka high 5 5 ns figure 12. asci receiver timing cka rxa t79 t80 t81 t83 t82 (input) t85 t84
Z80382/z8l382 high-performance data communications processors zilog 20 p r e l i m i n a r y ds97z382000 ac characteristics (continued) asci/csio timing - baud rate generator, /ctsa, /dcda, and /rtsa timing (see figures 13, 14 and 15) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol parameter Z80382 z8l382 units min. max. min. max. t88 busclk high to brg output delay 30 40 ns t89 brg output fall time 10 15 ns t90 brg output rise time 10 15 ns t91 /cts low time 100 100 ns t92 /cts high time 100 100 ns t93 /dcd low time 100 100 ns t94 /dcd high time 100 100 ns t95 busclk low to /rts valid 20 20 ns figure 13. baud rate generator timing busclk cka or cks t88 t88 t89 t90 (output)
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 21 1 figure 14. /ctsa and /dcda timing figure 15. /rtsa timing /cts /dcd t92 t91 t94 t93 busclk /rts t95
Z80382/z8l382 high-performance data communications processors zilog 22 p r e l i m i n a r y ds97z382000 ac characteristics (continued) general-purpose i/o port timing. (see figure 16) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol parameter Z80382 z8l382 units min. max. min. max. t100 i/o port data setup to /iord fall 10 10 ns t101 i/o port data hold from /iord high 5 5 ns t102 i/o port data valid from /iowr high 20 20 ns figure 16. general-purpose i/o port timing /iord t100 port input t102 port output t101 /iowr
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 23 1 hdlc receive timing- full time hdlc mode (see figures 17 and 18) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. no parameter Z80382 z8l382 units notes min. max. min. max. t103 external receive clock period 50 50 ns 1 t104 external receive clock low time 15 15 ns t105 external receive clock high time 15 15 ns t106 external receive clock rise time 5 10 ns t107 external receive clock fall time 5 10 ns t108 rxd setup to rxc edge (external rxc) 20 20 ns 1 t109 rxd hold from rxc low/high (external rxc) 5 5 ns 1 t110 rxc rise/fall time (internal rxc) 5 10 ns 1 t111 rxd setup to rxc edge (internal rxc) 20 25 ns 1 t112 rxd hold from rxc low/high (internal rxc) 510ns1 note: 1. receive clock sampling edge is configurable by means of rirn[6]. see Z80382 user manual. figure 17. hdlc receive timing (full time hdlc, rxc input) rxc (1) rxd (input) t109 t108 t106 t105 t104 t103 t107 note 1. hdlc clock triggering polarity is configurable by means of rirn[6]. see Z80382 user manual.
Z80382/z8l382 high-performance data communications processors zilog 24 p r e l i m i n a r y ds97z382000 ac characteristics (continued) figure 18. hdlc receive timing (full time hdlc, rxc output) rxc (1) rxd (output) t112 t111 t110 note 1. receive clock sampling edge is configurable by means of rirn[6]. see Z80382 user manual.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 25 1 hdlc transmit timing- full time hdlc mode (see figure 19) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol parameter Z80382 z8l382 units notes min. max. min. max. t113 external transmit clock period 50 50 ns 1 t114 external transmit clock high time 15 15 ns t115 external transmit clock low time 15 15 ns t116 external transmit clock fall time 5 10 ns t117 external transmit clock rise time 5 10 ns t118 txc low to txd data valid 20 25 ns figure 19. hdlc transmit timing (full time hdlc) txc txd t113 t114 t115 t117 t116 t118 (input)
Z80382/z8l382 high-performance data communications processors zilog 26 p r e l i m i n a r y ds97z382000 ac characteristics (continued) hdlc timing - non-gci tdm mode (see figure 20) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol parameter Z80382 z8l382 units notes min. max. min. max. t120 fsc setup to bcl fall 30 50 ns t121 fsc hold from bcl low 20 30 ns t122 bcl period 50 50 ns t123 bcl high time 15 15 ns t124 bcl low time 15 15 ns t125 bcl high to txen low 15 20 ns t126 bcl high to txen high 15 20 ns t127 bcl high to txd valid 15 20 ns t128 bcl high to txd invalid 15 20 ns t129 rxd setup to bcl fall (rise) 15 20 ns 1 t130 rxd hold from bcl low (high) 5 5 ns 1 note: 1. receive clock sampling edge is configurable by means of rirn[6]. see Z80382 user manual. figure 20. hdlc timing - non-gci tdm mode (shown for start = 3, length = 2, negative edge rxd sampling) bcl fsc number of (input) txen t121 txd (input) rxd t130 t127 t128 t125 t122 t124 t120 t129 t123 t126 0123 clocks start
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 27 1 gci/scit timing - slave characteristics (see figure 21) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. gci/scit timing - master characteristics (see figure 21) specifications apply over standard operating conditions unless otherwise noted . c l = 50 pf for outputs. symbol parameter Z80382 z8l382 units min. max. min. max. t131 dcl data clock rise/fall time 5 10 ns t132 dcl clock period 50 50 ns t133 dcl pulse width high 15 15 ns t134 fsc setup to dcl fall 30 30 ns t135 fsc hold from dcl low 5 10 ns t136 dcl high to du/dd transmit data valid 15 20 ns t137 fsc high to du/dd transmit data valid 15 20 ns t138 du/dd receive data setup to dcl fall 15 20 ns t139 du/dd receive data hold from dcl low 0 0 ns symbol parameter Z80382 z8l382 units min. max. min. max. t131 dcl data clock rise/fall time 5 10 ns t132 dcl clock period 50 50 ns t133 dcl pulse width high 15 15 ns t134 fsc setup to dcl fall 30 30 ns t135 fsc hold from dcl low 5 10 ns t136 dcl high to du/dd transmit data valid 15 20 ns t137 fsc high to du/dd transmit data valid 15 20 ns t138 du/dd receive data setup to dcl fall 15 20 ns t139 du/dd receive data hold from dcl low 0 0 ns t140 fsc high from dcl high 0 0 ns
Z80382/z8l382 high-performance data communications processors zilog 28 p r e l i m i n a r y ds97z382000 ac characteristics (continued) pin functions the tables which follow describe the input and output sig- nals of the z382. signals are normally asserted in the high state and negated in the low state. a hyphen (/) preceding the signal name indicates that the signal is asserted in the low state and negated in the high state. many pins have multiple functions, and thus may appear more than once in the pin description tables. in each table, such pins are described using their function in that mode. likewise, some signals may be output on alternate pins depending on the mode under which the z382 is operating. the notation xx/yy in the pin number column indicates that the signal may be assigned to pin xx or pin yy. figure 21. gci/scit slave and master timing dcl fsc t138 du/dd t139 3 t132 t135 t134 t133 t140 t137 t136 t131 t131 du/dd transmit receive
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 29 1 table 4. mpu signals pin name pin number(s) description a23 - 0 141 - 144, 1 - 4, 6 - 13, 15 - 22 address bus (outputs, active high, tri-state): these non-multiplexed address signals pro- vide a linear memory address space of 16 mb. the address signals are also used to ac- cess i/o devices. /busack 132 bus acknowledge (output, active low, tri-state): this signal, when asserted, indicates that the 380c has accepted an external bus request and has tri-stated its output drivers for the address bus, databus and the bus control signals /trefr, /trefa, /trefc, /bhen, /blen, /mrd, /mwr, /iorq, /iord, and /iowr. the 380c cannot provide any dram refresh transactions while it is in the bus acknowl- edge state. /bhen 118 byte high enable (output, active low, tri-state): this signal is asserted at the beginning of a memory or refresh transaction, to request an operation on d15-8. if software initiates a 16-bit memory operation, but /msize is asserted indicating a byte-wide memory, only the data on d7-0 is transferred in the current transaction, and another transaction is per- formed to transfer the other data byte, also on d7-0. /blen 119 byte low enable (output, active low, tri-state): this signal is asserted at the beginning of a memory or refresh transaction, to request an operation on d7-0. if software initiates a 16-bit memory transaction, but /msize is asserted indicating a byte-wide memory, only the data on d7-0 is transferred in the current transaction, and another transaction is performed to transfer the other data byte, also on d7-0. to align z382 documentation and terminology with historical z80 and industry (e.g., intel) practice, the names of the /bhen and /blen pins, as well as the d15-8 and d7-0 pins, have been swapped on the z382 compared to the z380. this fact should be significant only for those using a z380 emulator in a z382-based project. /busreq 133 bus request (input, active low): when this signal is asserted, an external bus master is requesting control of the bus. /breq has higher priority than all nonmaskable and maskable interrupt requests. busclk 127 bus clock (output, active high, tri-state): this signal is the reference edge for the majority of other signals generated by the 380c. its frequency may be that of the clki pin, or clki divided by two or times two. d15-0 24 - 31 33 - 40 d15-0 data bus (input/output, active high, tri-state): this bidirectional 16-bit data bus is used for data transfer between the 380c and memory or i/o devices. in a memory word transfer, the even-addressed (a0=0) byte is transferred on d7-0, and the odd-addressed (a0=1) byte on d15-8. 8-bit memories should be connected to d7-0, while 8-bit i/o devices should be attached to d15-8 (this difference tends to equalize electrical loading). (see note under /blen pin description.) /halt /stnby 121 120 halt, standby status (outputs, active low): these two outputs indicate the status of the z382 as follows: /stnby h h l l /hal t h l h l mode normal instruction execution halt instruction sleep mode: clock runs but is blocked from most of the chip standby mode: oscillator is stopped /int3 /int2 /int1 139 138 137 interrupt requests (inputs): asynchronous maskable interrupt inputs. can be selected as low- or high-level sensitive, or as falling- or rising-edge triggered. /int0 136 interrupt request (input, active low): /int0 is logically ored (positive-logic anded) with the interrupt requests from the on-chip mimic, dmas, and hdlc controllers, to create the processor?s /int0 input.
Z80382/z8l382 high-performance data communications processors zilog 30 p r e l i m i n a r y ds97z382000 pin functions (continued) ioclk 114 i/o clock (output, active high, tri-state): this signal is a program controlled divided-down version of busclk. the division factor can be two, four, six or eight with i/o transactions and interrupt-acknowledge transactions occurring relative to ioclk. ioclk can be dis- abled, in which case busclk is the timing reference for i/o transactions. note: the intack output of the z380 has been omitted on the z382 for pinning reasons. a similar signal can be easily obtained by low-active-anding (positive-logic oring) the /m1 and /iorq outputs. /iorq 115 input/output request (output, active low, tri-state): this signal is active during all i/o read and write transactions and interrupt acknowledge transactions. /iord 125 input/output read strobe (output, active low, tri-state): this signal is used to strobe data from the peripherals during i/o read transactions. /iowr 123 input/output write strobe (output, active low, tri-state): this signal is used to strobe data into the peripherals during i/o write transactions. /iocs1 /iocs2 45 46 i/o chip select (output, active low): these outputs may be used to access external i/o devices. the base i/o address and range are programmable. /m1 116 machine cycle one (output, active low, tri-state): this signal is active during instruction fetch and interrupt acknowledge transactions. note that the z382 does not support reti decoding by z80 peripherals (pio), sio, and ctc. it does support z80-type interrupt dai- sy-chaining by devices that include explicit clearing of ius (for example, scc). /mrd 126 memory read (output, active low, tri-state): this signal indicates that the addressed memory location should place its data on the data bus. /mrd is active from the end of t1 until the end of t4 during memory read transactions. /msize 117 memory size (input/open-drain output, active low): in 16-bit memory operations, this sig- nal indicates whether the addressed memory location is word size (logic high) or byte size (logic low). in the latter case, the 8-bit memory should be connected to the d7-0 lines, and an additional memory transaction on d7-0 will automatically be generated to transfer the other byte of the word. (see the note on pin name swapping after the /blen pin descrip- tion.) /msize is driven as an open-drain output by the memory decoding modules, when they are enabled in 8-bit mode and the address falls within their range. table 4. mpu signals pin name pin number(s) description
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 31 1 . /mwr 124 memory write (output, active low, tri-state): this signal indicates that the addressed memory location should store the data on the databus, as qualified by /bhen and /blen. /mwr is active from the end of t2 until the end of t4 during memory write transactions. /nmi 135 nonmaskable interrupt (input, falling edge-triggered): this input has higher priority than the maskable interrupt inputs /int3-/int0. /reset 134 reset (input, active low): this input must be active for a minimum of five busclk periods to initialize the z382. the effect of /reset is described in detail in the reset section. /romcs 42 rom chip select (output, active low): after reset, the z382 drives this output and /msize low for all memory accesses with a23=0. software can program the chip select logic to assert /romcs for a different range of memory addresses. if rom is 16 bits wide and composed of two 8-bit devices, connect the chip select inputs of both devices to /romcs, and program the hardware not to force /msize low in the first two instructions of the rom code. /ramcsl /ramcsh 43 44 ram chip select low, high (outputs, active low): after reset, the z382 drives /ramc- sl and /msize low for memory cycles with a23=1, and puts the /ramcsh pin under con- trol of its alternate use (a port pin). if ram is only eight bits wide, connect its chip select input to /ramcsl. if ram is 16 bits wide, connect one of these pins to the chip select of each 8-bit ram, and reprogram the hardware not to force /msize low, in which case /ramcsl is qualified with /blen, and /ramcsh is qualified with /bhen. on the z382 these signals have the same timing as address lines, so there is no timing penalty for this qualification. /trefa 111 timing reference a (output, active low, tri-state): this timing reference signal goes low at the end of t2 and returns high at the end of t4 during a memory read, memory write or refresh transaction. it can be used to control the address multiplexer for a dram interface or as the /ras signal at higher processor clock rates. /trefc 110 /timing reference c (output, active low, tri-state): this timing reference signal goes low at the end of t3 and returns high at the end of t4 during a memory read, memory write or refresh transaction. it can be used as the /cas signal for dram accesses. /trefr 112 timing reference r (output, active low, tri-state): this timing reference signal goes low at the end of t1 and returns high at the end of t4 during a memory read, memory write or refresh transaction. it can be used as the /ras signal for dram accesses. /wait 130 wait (input, active low): this input is sampled by busclk or ioclk, as appropriate, to insert wait states into the current bus transaction. table 4. mpu signals pin name pin number(s) description table 5. uart, timer and csio signals pin name pin number(s) description cka0 cka1 53/92/96 49/65/100 asynchronous clock 0, 1 (bidirectional): clock signals to or from the asynchronous channels (ascis). /cts0 /cts1 61/111 60/110 clear to send 0, 1 (inputs, active low): transmit control signals for the asci channels. /dcd0 /dcd1 89/112 66 data carrier detect 0, 1 (inputs, active low): receive control signals for the asci chan- nels. /dcd1 is not available in isa applications.
Z80382/z8l382 high-performance data communications processors zilog 32 p r e l i m i n a r y ds97z382000 pin functions (continued) /rts0 /rts1 88/93 94 request to send 0, 1 (outputs, active low, tri-state): software-controlled output from the asci channels. rxa0 rxa1 52/90/99 55/67/103 receive data 0, 1 (inputs): asci receive data. txa0 txa1 51/91/98 54/87/102 transmit data 0, 1 (outputs): asci transmit data. cks 58/64 serial clock (bidirectional): the clock for the csio channel. rxs 57/63 clocked serial receive data (input): receive data for the csio channel. txs 56/62 clocked serial transmit data (output): transmit data from the csio channel. tout 46/109 timer out (output, active high): pulse output from prt1. table 5. uart, timer and csio signals table 6. isa bus signals pin name pin number(s) description hd7-0 78 - 85 host data bus (input/output, tri-state): isa or pcmcia data bus. /hdoen 62 host data output enable (output, active low): this signal goes low when the host reads data from the mimic, the i/o mailbox, or the plug and play interface, and during host dma read cycles. ha11-0 64 - 67 69 - 76 host address (input): part of the isa or pcmcia address bus. the ms bits can be de- coded by the built-in address decoder; bits 2-0 determine which mimic register the host accesses. bits 11-10 are decoded only by the plug and play isa module. haen 63 host address enable (input): haen must be low to qualify com port decoding, i/o mail- box decoding, and plug and play decoding. to support 16-bit decoding of host i/o ad- dresses, provide an external decoder for ha15-12 and haen all low and connect its low- active output to this pin. /hwr 60 host write (input, active low): the host drives this input low to signal the mimic that a write operation is taking place. /hrd 61 host read (input, active low): this input is used by the host to signal the mimic interface that a read operation is taking place. hint1 hint2 87 88 host interrupt (outputs, active high): one of these outputs is driven high by the plug and play module when the mimic requests an interrupt from the host. the unused signal is tri- stated. /hdak0 /hdak1 89 90 host dma acknowledge (inputs, active low): these inputs indicate that the host dma controller has acknowledged the request and is transferring data. hdrq0 hdrq1 91 92 host dma request (outputs, active high, tri-state): these outputs request a dma trans- fer operation from the host.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 33 1 table 7. parallel ports pin name pin number(s) description pa7-0 pb7-0 pc7-0 pd7-0 78 - 85 51 - 58 44 - 45, 47 - 49, 109, 101, 97 69 - 76 parallel ports a, b, c, d (input/outputs): these lines can be configured as inputs or out- puts on a bit-by-bit basis. in an isa or pcmcia application, ports a and d are not pinned out, the registers for ports a and d are used by the mimic function, and ports b and c are selectively multiplexed with the on-chip peripherals (ascis, csi/o, prt). in other applica- tions all four ports are available with minimal multiplexing. table 8. hdlc serial channel and gci/scit signals pin name pin number(s) description txd0 txd1 txd2 98 102 107 hdlc transmit (outputs): these pins are used to transmit serial data from the hdlc con- trollers when they are not operating by means of the gci/scit interface. rxd0 rxd1 rxd2 99 103 108 hdlc receive (inputs): these pins are used to receive serial data for the hdlc control- lers when they are not operating by means of the gci/scit interface. txc0/fsc0 txc1/fsc1 txc2/fsc2 96 100 105 hdlc transmit clock/frame sync (input/outputs): in non-tdm, non-gci modes, these can be used as external bit clock inputs or can be programmed to output the tx clock. in non-gci tdm mode, these pins carry the frame sync pulse. rxc0/bcl0 rxc1/bcl1 rxc2/bcl2 97 101 106 hdlc clock/bit clock (inputs): optional external bit clock inputs. /txen0 /txen1 /txen2 93 94 109 hdlc transmit enable (outputs, active low): in a non-gci tdm mode, these outputs in- dicate when an hdlc transmitter is enabled and is in its active time slot. in non-gci, non- tdm mode, these outputs are low when the transmitter is enabled. they can be used to enable an external driver on the txd line. du dd 105 107 gci/scit data upstream, downstream (input/outputs, open-drain): the two bidirection- al data streams of the gci/scit interface. dcl 106 gci/scit clock (input): bit clock for the gci/scit interface. fsc 108 gci/scit frame sync (input): this pin is used to synchronize the gci/scit serial frames. this pin is driven active by the upstream device (isdn transceiver) at the start of each gci/scit frame.
Z80382/z8l382 high-performance data communications processors zilog 34 p r e l i m i n a r y ds97z382000 pin functions (continued) table 9. pcmcia interface signals pin name pin number(s) description ha9-0 66 - 67 69 - 76 pcmcia address bus (inputs): provide host pc addressing of attribute memory, config- uration registers, and mimic. decoded by the i/o address decoder. hd7-0 78 - 85 pcmcia data bus (input/outputs): used for data transfers between the host pc and the mimic, the attribute memory, and the configuration registers. /pciord 61 pcmcia i/o read (input, active low): used to generate the inpack signal when an i/o read cycle is within the configured range, and reads from the mimic. /pciowr 60 pcmcia i/o write (input, active low): this signal is used to write to the mimic. /pcwe 89 pcmcia write enable (input, active low): used to write to the attribute memory or to the configuration register which is addressed by means of ha9-1. such an operation is recog- nized when /pcwe, /pcce1, and /pcreg are all low, and either the interface is config- ured for i/o and memory operation, or /pcirq is high, signifying ready, when config- ured as a memory only interface. the data applied while /pcwe is low are written to the attribute memory range on the positive edge of the /pcwe or card-enable (/pcce1) sig- nal. /pcoe 90 pcmcia output enable (input, active low): /pcoe, /pcce1, and /pcreg all low signify a read from attribute memory or a configuration register as selected by ha9-1. /pcce1 91 pcmcia chip enable 1 (input, active low): /pcce1 low indicates a read or write access to: an even addressed byte in attribute memory, a configuration register, or the mimic. /pcreg 63 pcmcia register select (input, active low): /pcreg low indicates a read or write ac- cess to the attribute memory range or to the i/o address range. /inpack 62 pcmcia input acknowledge (output, active low): /inpack goes low while an i/o read access is performed within the configured i/o address range. if the pcmcia interface is configured such that it reacts independent of the address to all i/o read cycles, then /in- pack is activated with /pciord. /pcirq 87 pcmcia interrupt request (output, active low): after the pcmcia interface is reset it is in a memory-only mode, and this signal is driven low to signify a busy state until the 380c writes a register bit to say it is ready. after the card is then configured by the host, /pcirq goes low to request a host pc interrupt when the internal int0 signal is asserted by the mimic. /pcirq is monitored by the pcmcia host adapter and, dependent on the configuration, connected to one of the host interrupts (for example, com1 or com2 inter- rupt). /pcirq can be programmed to be a pulsed interrupt with a minimal pulse length of one microsecond, or a level-interrupt that is reset when the interrupt is processed by the host. this choice is made by means of bit 6 of the configuration option register. pcreset 92 pcmcia reset (input, active high): setting pcreset high resets the pcmcia interface. the card configuration register is cleared and the pcmcia interface operates in the mem- ory-only mode until it is configured again. the attribute memory has to be initialized by the controller, and the ready/busy (/pcirq) signal has to be deactivated. stschg 88 pcmcia status change (output): this output is controlled by a bit in the pcmcia mod- ule?s 380c control register.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 35 1 functional description the functional blocks within the z382 can be broadly iden- tified as central processing unit, host interface, serial com- munication channels, dma control, timers and counters, and system interface logic. each of these blocks will be fur- ther described in the sections which follow. for additional information, please refer to the z382 user?s manual, available from your zilog representative or distrib- utor. central processing unit the central processing unit (cpu) core of the z382 is the 380c (z380), which is a binary-compatible extension of the z80 and z180 a cpu architectures. high throughput rates for the 380c are achieved by a high clock rate, high bus bandwidth and instruction fetch/execute overlap. communicating to the external world through an 8- or 16- bit data bus, the 380c is a full 32-bit machine internally, with a 32-bit alu and 32-bit registers. modes of operation the 380c can operate in either native or extended mode, as controlled by a bit in the select register (sr). in native mode (the default configuration after reset), all address manipulations are performed modulo 65536 (16 bits). in this mode the program counter (pc) only increments across 16 bits, all address manipulation instructions (incre- ment, decrement, add, subtract, indexed, stack relative, and pc relative) only operate on 16 bits, and the stack pointer (sp) only increments and decrements across 16 bits. the program counter high-order word is left at all ze- ros, as are the high-order words of the stack pointer and the i register. thus, native mode is fully compatible with the z80 cpu's 64 kb address space. it is still possible to address memory outside of the 64 kb address space for data storage and retrieval in native mode, however, as di- rect addresses, indirect addresses, and the high-order word of the sp, i and the ix and iy registers may be loaded with non-zero values. but executed code and interrupt ser- vice routines must reside in the lowest 64 kb of the ad- dress space. in extended mode, all address manipulation instructions operate on 32 bits, potentially allowing access to a 4 gb address space. in both native and extended modes, how- ever, the z382 outputs only 24 bits of the address onto the external address bus, limiting the actual usable address space to 16 mb. only the width of manipulated addresses distinguish native from extended mode. the 380c imple- ments one instruction to allow switching from native to ex- tended mode, but once in extended mode, only reset re- turns the cpu to native mode. this restriction applies table 10. other signals pin name pin number(s) description clki 128 clock/crystal (input, active high): an externally generated clock can be input at this pin. alternatively, a crystal can be connected between clki and clko. in either case, the fre- quency at this pin can be used directly as the processor clock (busclk), or divided by two or multiplied by two, under software control. clko 129 clko crystal (output, active high): crystal oscillator connection.this pin should be left open if an externally generated clock is input at the clki pin. feedback on this pin can be disabled by software to save power and noise when an external clock is used. iei 47 interrupt enable in (input, active high): if external devices are connected to /int0, and should have higher interrupt priority than the on-chip mimic, dmas, and hdlc controllers, this signal should be connected to the ieo output of the lowest-priority among such devic- es. ieo 48 interrupt enable out (output, active high): if external devices are connected to /int0, and should have lower interrupt priority than the on-chip mimic, dmas, and hdlc controllers, this signal should be connected to the iei input of the highest-priority such device. v dd 5, 23, 41, 59, 77, 95, 113, 131 power supply : these eight pins carry power to the device. they must be tied to the same voltage externally. v ss 14, 32, 50, 68, 86, 104, 122, 140 ground : these eight pins are the ground references for the device.they must be tied to the same voltage externally.
Z80382/z8l382 high-performance data communications processors zilog 36 p r e l i m i n a r y ds97z382000 central processing unit (continued) because of the possibility of "misplacing" interrupt service routines or vector tables during the translation from ex- tended mode back to native mode. in addition to native and extended mode, which is specific to memory space addressing, the 380c can operate in ei- ther word or long word mode specific to data load and ex- change operations. in word mode (the reset configura- tion), all word load and exchange operations manipulate 16-bit quantities. for example, only the low-order words of the source and destination are exchanged in an exchange operation, with the high-order words unaffected. in long word mode, all 32 bits of the source and destina- tion are exchanged. the 380c implements two instruc- tions plus decoder directives to allow switching between word and long word modes. the two instructions perform a global switch, while the decoder directives select a par- ticular mode only for the instruction that they precede. note that all word data arithmetic (as opposed to address manipulation arithmetic), rotate, shift and logical opera- tions are always in 16-bit quantities. they are not con- trolled by either the native/extended or word/long word selections. the exceptions to the 16-bit quantities are, of course, those multiply and divide operations with 32-bit products or dividends. lastly, all word input/output operations are performed on 16-bit values. cpu address spaces the 380c architecture supports five distinct address spac- es corresponding to the different types of locations that can be accessed by the cpu. these five address spaces are: cpu register space, cpu control register space, memory address space, and i/o address space (on-chip and external). cpu register space the cpu register space is shown in figure 26 and con- sists of all of the registers in the cpu register file. these cpu registers are used for data and address manipula- tion, and are an extension of the z80 cpu register set, with four sets of this extended z80 cpu register set present in the 380c. access to these registers is specified in the in- struction, with the active register set selected by bits in the select register (sr) in the cpu control register space. primary and working registers. the working register set is divided into the two register files; the primary file and the alternate file (designated by ?). each file contains an 8- bit accumulator (a), a flag register (f), and six general- purpose registers (b, c, d, e, h, and l). only one file can be active at any given time, although data in the inactive file can still be accessed. exchange instructions allow the programmer to exchange the active file with the inactive file. the accumulator is the destination register for 8-bit arith- metic and logical operations. the six general-purpose reg- isters can be paired (bc, de, and hl), and are extended to 32 bits by the ?z? extension to the register to form three 32-bit general-purpose registers. the hl register serves as the 16-bit or 32-bit accumulator for word operations. cpu flag register. the flag register contains six flags that are set or reset by various cpu operations: index registers. the four index registers, ix, ix?, iy and iy?, each hold a 32-bit base address that is used in the in- dexed addressing mode. the index registers can also function as general-purpose registers with the upper and lower bytes of the lower 16 bits being accessed individual- ly. interrupt register. the interrupt register (i) is used in in- terrupt modes 2 and 3 for /int0 to generate a 32-bit indi- rect address to an interrupt service routine. the i register supplies the upper 24 or 16 bits of the indirect address and the interrupting peripheral supplies the lower 8 or 16 bits. in the assigned vectors mode for /int1-3, the upper 16 bits of the vector are supplied by the i register; bits 15-9 are the assigned vector base and bits 8-0 are the assigned vector unique to each of /int1-3. program counter. the program counter (pc) is used to sequence through instructions in the currently executing program and to generate relative addresses. the pc con- tains the 32-bit address of the current instruction being fetched from memory. in the native mode, the pc is effec- tively only 16 bits long, as carries from bit 15 to bit 16 are inhibited in this mode. in extended mode, the pc is al- lowed to increment across all 32 bits. r register. the r register can be used as a general-pur- pose 8-bit read/write register. e carry e add/subtract e parity/over?ow e half carry e zero e sign
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 37 1 stack pointer. the stack pointer (sp) is used for saving information when an interrupt or trap occurs and for sup- porting subroutine calls and returns. stack pointer relative addressing allows parameter passing using the sp. select register. the select register (sr) controls the register set selection and the operating modes of the 380c cpu. cpu control register space the cpu control register space consists of the 32-bit se- lect register (sr). the contents of sr determine the cpu operating mode, which register bank will be used, the in- terrupt mode in effect, and other items of this type. memory address space the memory address space can be viewed as a linear space of 4 gb. the actual usable memory space in the z382, however, is 16 mb, since only the lower 24 bits of the address are output on the external address bus. the 8- bit byte is the basic addressable element in the 380c memory address space. however, there are other addres- sable data elements; bits, 2-byte words, byte strings, and 4-byte words. the size of the data element being ad- dressed depends on the instruction being executed as well as the word/long word mode. when a word is stored in memory, the least significant byte precedes the more significant byte of the word, as in the z80 cpu architecture. also, the lower-addressed byte is present on the upper byte of the external data bus. on-chip and external i/o address space the 380c cpu architecture distinguishes between the memory and i/o spaces and, therefore, requires specific i/o instructions. i/o instructions are used to access the z382?s internal peripherals as well as a number of control registers which deal with functions such as interrupts and traps. i/o instructions are also used to access external pe- ripheral controllers connected to the z382?s external ad- dress, data and control busses. data types the z380 cpu can operate on bits, binary-coded decimal (bcd) digits (4 bits), bytes (8 bits), words (16 bits or 32 bits), byte strings, and word strings. bits in registers can be set, cleared, and tested. bcd digits, packed two to a byte, can be manipulated with the decimal adjust accumulator instruction (in conjunction with binary addition and subtrac- figure 22. 380c processor core register set af bc de hl ixu ixl iyu iyl a' f' b' c' d' e' h' l' ixu' ixl' iyu' iyl' bcz' dez' hlz' ixz' iyz' bcz dez hlz ixz iyz r i spz pcz iz sp pc 4 sets of registers
Z80382/z8l382 high-performance data communications processors zilog 38 p r e l i m i n a r y ds97z382000 central processing unit (continued) tion) and the rotate digit instructions. bytes are operated on by 8-bit load, arithmetic, logical, and shift and rotate in- structions. words are operated on in a similar manner by the word load, arithmetic, logical, and shift and rotate in- structions. block move and search operations can manip- ulate byte strings and word strings up to 64 kb or words long. block i/o instructions have identical capabilities. addressing modes addressing modes are used by the 380c to calculate the effective address of an operand needed for execution of an instruction. seven addressing modes are supported by the cpu. of these seven, one is an addition to the z80 cpu addressing modes (stack pointer relative) and the re- maining six modes are either existing or extensions to the z80 cpu addressing modes. register addressing the operand is one of the 8-bit registers (a, b, c, d, e, h, l, ixu, ixl, iyu, iyl, a', b', c', d', e', h' or l'); or is one of the 16-bit or 32-bit registers (bc, de, hl, ix, iy, bc', de', hl', ix', iy' or sp) or one of the special registers (i or r). immediate addressing the operand is in the instruction itself and has no effective address. the ddir ib and ddir iw decoder directives al- low specification of 24-bit and 32-bit immediate operands, respectively. indirect register addressing the contents of a register specify the effective address of an operand. the hl register is the primary register used for memory accesses, but bc and de can also be used. (for the jp instruction, ix and iy can also be used for in- direction.) the bc register is used for i/o space accesses. direct addressing the effective address of the operand is the location whose address is contained in the instruction. depending on the instruction, the operand is either in the i/o or memory ad- dress space. sixteen bits of direct address is the norm, but the ddir ib and ddir iw decoder directives allow 24-bit and 32-bit direct addresses, respectively. indexed addressing the effective address of the operand is the location com- puted by adding the two's-complement signed displace- ment contained in the instruction to the contents of the ix or iy register. eight bits of index is the norm, but the ddir ib and ddir iw decoder directives allow 16-bit and 24-bit indexes, respectively. program counter relative addressing an 8-, 16- or 24-bit displacement contained in the instruc- tion is added to the program counter to generate the ef- fective address. this mode is available only for jump and call instructions. stack pointer relative addressing the effective address of the operand is the location com- puted by adding the two's-complement signed displace- ment contained in the instruction to the contents of the stack pointer. eight bits of index is the norm, but the ddir ib and ddir iw decoder directives allow 16- and 24-bit in- dexes, respectively. instruction set the 380c instruction set is an expansion of the z80 in- struction set; the enhancements include support for addi- tional addressing modes and a number of new instruc- tions. the 380c is opcode compatible with the z80 cpu and z180 mpu. thus, a z80/z180 program can be executed on the 380c without modification. the instruction set is divided into 12 groups by function; these are listed below. consult the z380 user?s manual for additional details on the instruction set. e 8-bit load/exchange e 16/32-bit load, exchange, swap and push/pop e block transfers and search e 8-bit arithmetic and logical operations e 16/32-bit arithmetic operations e 8-bit bit manipulation, rotate and shift e 16-bit rotates and shifts e program control e i/o operations (internal) e i/o operations (external) e cpu control e decoder directives
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 39 1 host interface the host interface block in the z382 includes the 16550 mimic, the host dma mailbox, the isa pnp interface and the pcmcia interface. 16550 mimic the z382 includes a 16x50 mimic interface that allows it to emulate the operation of a pc uart. the interface allows the z382 to be connected directly to an isa bus or pcm- cia bus without any external circuitry. the mimic contains the 16x50 register set and the same interrupt structure. the data path allows parallel transfer of data to and from the register set by the internal processor of the z382. control of the register set is maintained by six priority en- coded interrupts to the z382. when the pc host reads or writes to certain mimic registers, an interrupt to the z382 is generated. each interrupt can be individually masked off or all interrupts can be disabled by writing a single bit. two 8-bit timers are also available to control the data transfer rate of the mimic interface. their input is tied to a baud rate generator in the mimic, allowing a wide range of data rates to be emulated. two additional 8-bit timers are available for programming the fifo timeout feature (four character-time emulation) for both the receiver and the transmitter fifos. the 16550 mimic supports the pc host interrupt structure by means of the plug and play isa or pcmcia interface modules. com port decoding is also provided by the same modules. a bit in the z382 system configuration register controls whether the registers of the 16x50 mimic interface are ac- cessible in any page of i/o space, as on the z8018x family, because only the lowest eight address lines are decoded, or whether a15-8 must be zero to access the registers. the mimic interface can transfer both transmit and re- ceive data under control of the z382?s dma channels, thus minimizing processor overhead and maximizing through- put in high-speed applications. figure 23. 16550 mimic block diagram 16550 mimic register set host irq host dma mailbox receive timer transmit timer z382 irq control control/ contguration register host address decode host irq host dma control 2 8 internal data bus com port decode from plug and play isa or pcmcia 4 8 6 16550 mimic side or host side interface 380c mpu side interface z80380 addr
Z80382/z8l382 high-performance data communications processors zilog 40 p r e l i m i n a r y ds97z382000 host interface (continued) mimic receiver fifo the receiver fifo is 16-words deep and stores eight data bits and three error bits (parity error, framing error and break detect) for each character received. the data and error bits move together in the fifo. the error bits be- come available to the host side of the interface when that particular location becomes the next address to read (top of fifo). at that time they may either be read by the host or they may cause an interrupt to the host interface if so enabled. the error bits are set by the error status of the byte at the top of the fifo but may only be cleared by reading the line status register (lsr). if successive reads of the receiver fifo are performed without reading the lsr, the status bits will be set if any of the bytes read have the respective error bit set. the host interface may be interrupted when 1, 4, 8 or 14 bytes are available in the receiver fifo. if the fifo is not empty, but below the programmed trigger value, a timeout interrupt is available if the receiver fifo is not written by the 380c or read by the host by an interval determined by the character timeout timer. this is an additional timer with 380c access only which is used to emulate the 16550 four-character timeout delay. the timer receives the brg as its input clock. software must determine the correct val- ues to program into the receiver timeout register and the brg to achieve the correct delay interval for timeout. these interrupts are cleared by the fifo reaching the trig- ger point or by resetting the timeout interval timer by a fifo 380c write or host read access. with fifo mode enabled, the 380c is interrupted when the receiver fifo is empty. this bit corresponds to a host read of the receiver buffer in non-fifo (16450) mode. the interrupt source is cleared when the fifo becomes non- empty or the 380c reads the ius/ip register. figure 24. 16550 mimic receiver fifo block diagram write pointer read pointer 16 x 8 data bits 16 x 3 error bits write buffer read buffer sync sync alu 33 8 3 5 8 mpu write lsr shadow b2-b4 mpu control line mpu databus (mpu side write) internal clock mpu irq internal clock internal clock pc read lsr shadow b2-b4 pc control line pc databus (pc side read) fifo control register pc irq 380c mpu side interface 16550 mimic or pc side interface
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 41 1 transmitter fifo the transmitter fifo is 16-bytes deep with host write and 380c read access. in fifo mode, the host will receive an interrupt when the transmitter fifo becomes empty. the interrupt is cleared when the transmitter fifo becomes non-empty or the iir register is read by the host. on the 380c interface, the transmit fifo can be pro- grammed to interrupt the 380c on 1, 4, 8 or 14 bytes of available data. a timeout feature exists, transmitter time- out timer, which is an additional 8-bit timer with the brg as the input source. if the transmitter fifo is non-empty and no host write or 380c read of the fifo has taken place within the timer interval, a timeout will occur, causing a corresponding interrupt to the 380c. transmit and receive timers because of the speed at which data transfers can take place between the z382 and the host, two timers have been added to alleviate any software problems that a high speed data transfer might cause. these timers allow the programmer to slow down the data transfer to simulate the mimic receiving and transmitting the data serially. the tim- ers receive their input from the mimic brg clock. this al- lows the programmer access to a 24-bit timer to slow down the data transfers. mimic programming registers the mimic module contains a set of registers for program- ming various aspects of mimic operation. these are: figure 25. 16550 mimic transmitter fifo block diagram read pointer write pointer 16x8 data bits read buffer write buffer sync sync alu 8 8 mpu control line mpu databus (mpu side read) fifo control register mpu irq internal clock internal clock pc control line pc databus (pc side write) internal clock pc irq mpu side interface 16550 mimic or pc side interface 5 register 380c i/o address mimic master control register %00ff mimic dma control register %00ef mimic ius/ip register %00fe interrupt enable register %00fd interrupt vector register %00fc fifo status and control register %00ec rx timeout time constant register %00ea tx timeout time constant register %00eb transmitter time constant register %00fa receiver time constant register %00fb
Z80382/z8l382 high-performance data communications processors zilog 42 p r e l i m i n a r y ds97z382000 host interface (continued) mimic-host interface registers in addition to the mimic programming registers, the z382 contains a register set for interfacing with the host by means of the mimic. these registers are used to emulate the 16550 uart so that the host can access these regis- ters just as if it was interfacing with the uart. this pro- vides software compatibility with existing host communi- cation software. the registers are: baud rate generator the baud rate generator (brg) provides emulation tim- ing for the mimic. the brg output clocks the mimic emu- lation counter, while the brg itself is clocked by the bus- clk output of the 380c. two 8-bit registers are provided to program the brg time constant. design is such that on- the-fly modification of the registers does not cause irregu- lar brg output. host dma mailbox the host dma mailbox facility provides a path for host dma data transfers separate from the mimic com port. commands and data flow over the com port, while the dma path can be used for other purposes. the host dma mailbox feature includes control registers that allow host dma data transfer between host memory and, for exam- ple, a modem speaker/microphone codec. transfers are driven by the host?s dma on one side; z382 dma chan- nel(s) or programmed i/o can be used on the other side. thus, several modes of operation can be programmed: e host dma write, z382 polled input e host dma read, z382 polled output e host dma write with z382 dma e host dma read with z382 dma on the isa bus, the z382 can use two independent dma mailbox facilities. when either of these facilities is enabled in the plug and play module, that module signals a dma request by driving hdreq0 or hdreq1 high; if a facility is disabled, the corresponding hdreq pin is tri-stated. a low on one of the acknowledge signals, /hdack0 or /hdack1, more or less simultaneously with /hwr or /hrd low when the corresponding hdreq line is being driven high, indicates a dma cycle. in a pcmcia socket, only one dma mailbox can be used. when an option bit in one of the pcmcia registers is 1, a dma request is signalled by setting the /inpack output low. a dma cycle is signalled by having the /pcreg line high while /pciord or /pciowr goes low. plug and play interface this module, with support from appropriate z382-based firmware, complies with version 1.0a of the microsofta /in- tela plug and play isa specification. the z382?s pnp module provides for i/o address decod- ing, interrupt channel selection and dma channel selec- tion. pin limitations constrain the internal address decod- ing for i/o addresses to 12 bits. since 16-bit decoding is preferred for full plug and play compliance, an additional input, haen, is provided which must be low for a valid ad- dress decode. this permits external decoding of ha15-12. register host address 1 380c i/o address receiver buffer register %00 2 %00f0 transmit holding register %00 2 %00f0 interrupt enable register %01 2 %00f1 interrupt id register %02 -- line control register %03 %00f3 modem control register %04 %00f4 line status register %05 %00f5 modem status register %06 %00f6 scratch register %07 %00f7 divisor latch ms byte %01 3 %00f9 divisor latch ls byte %00 3 %00f8 fifo control register %02 %00e9 mimic moditcation reg. -- %00e9 note: 1. the host address is relative to the mimic base address d coded by the pnp isa or pcmcia modules in the z382. 2. dlab (lcr[7]) = 0. 3. dlab (lcr[7]) = 1.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 43 1 isa ports the pnp interface implements three 8-bit ports on the isa bus. the address port is a write-only port at the fixed ad- dress 0279h. the write data port is a write-only port at the fixed address 0a79h. the read data port is a read- only port at a programmable address among 0203h, 0207h, 020bh, ..., 03ffh. the host may write to the address port for three reasons: 1. as part of sending an initiation key to all the pnp cards in the system. 2. to select a register on one or all pnp cards as the destination of a subsequent write to the write data port. 3. to select a register on one card, or the isolation facility on multiple cards, as the source of data in a subsequent read from the read data port. basic operation the space that the host can access by writing to the ad- dress port, and then writing to the write data port or read- ing from the read data port, is in large part also accessible to the 380c processor. its 256 locations are sparsely pop- ulated with hardware registers. after reset, and on command from host software, including in normal operation, the pnp interface is said to be in wait for key state. in this state, none of the pnp locations are accessible to the host on the isa bus. before accessing any of these locations, the host must first do a specified sequence of 34 write operations, called an initiation key, to the address port before it can access any of the registers of the pnp interface. the initiation key is detected by the pnp interface hardware. figure 26. plug and play interface isa - pnp address port write data port read data port key detect isolation, identification and configuration controller configuration i/o address interrupt dma decoder request router req/ack router host isa address/data/control bus internal address/data/control bus pnp registers control mimic i/o mailbox z382 interrupt request Z80382 dma req/ack read/write logic
Z80382/z8l382 high-performance data communications processors zilog 44 p r e l i m i n a r y ds97z382000 host interface (continued) each pnp card manufactured must have a non-zero 64-bit identity value that is divided into a 16-bit vendor id, a 16- bit product id including revision, and a 32-bit serial num- ber. 380c firmware has complete control of this number; no mechanism for storing or determining it is included in the pnp interface. after sending an initiation key, the host can only access a few of these registers in a defined sequence, called the isolation protocol, which selects the pnp card with the 64- bit value having the most low-order ones, among those in the system. the timing requirements of the isolation proto- col are quite slow compared to the speed of the 380c pro- cessor, and the 64-bit id and an associated 8-bit check- sum are sequenced to the pnp interface by the 380c, on a polled or interrupt-driven basis. after isolating a card by means of the isolation protocol, host software assigns the isolated card a card select number (csn), starting with 01h and ascending for sub- sequent cards. assigning a csn eliminates the card from future repetitions of the protocol. then, or later, host soft- ware reads the characteristics of the card, called the re- source data, in a handshake manner with 380c firmware. host software repeats this process until it determines that it has seen all of the pnp cards in the system. then it allo- cates resources including memory and i/o space address- es, interrupt levels, and dma channels, and uses the var- ious cards? csns to write these allocations to configuration registers in the pnp register space. finally, host software places all the pnp interfaces in the system back in wait for key state, in which they perform address decoding and interface the interrupt and dma re- quests and acknowledgments, but have no affect on other system operations. if the host software thereafter deter- mines that the system needs reconfiguring, it sends anoth- er initiation key. in this case, however, it can address a specific card using the previously assigned csn. configuration registers the following configuration registers are implemented in the z382 to provide for the resources required by the host to interface to the host-accessible functions within the chip: e i/o mailbox i/o address e mimic i/o address e interrupt request level - can be selected to be output on either of the two available interrupt output lines. a unique z382 feature allows these two pins to be contgured to be any two of the isa- bus interrupt lines. e dma channel 0, dma channel 1 - a unique z382 feature allows the two dma pin pairs to be contgured to be any two of the seven isa-bus dma channels. host writes to the configuration registers are effective im- mediately, in hardware, so there is no urgent need for the 380c processor to translate them into other register val- ues. but the 380c processor can use the interrupt that oc- curs when the host terminates configuration state to ex- amine what the host has done to the configuration registers, and operate accordingly in the future. pcmcia interface the pcmcia interface block integrates all the functions necessary for the operation of i/o interface cards in a pc- mcia 2.0 and 3.0 socket. these functions are: e pcmcia interface control e attribute memory e contguration registers e i/o interface e contgurable address decoder e contgurable interrupt logic e z380 interface
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 45 1 pcmcia i/o interface control the i/o interface contains the main functionality of the pc- mcia block. the interface decodes addesses for i/o ac- cesses by the host according to the pcmcia standard. the host writes to the configuration option register an in- dex to select the base address of the desired i/o address range. after configuration, i/o accesses to this address range are recognized, and the mimic chip select is assert- ed when a valid i/o access is performed and the address is in the configured address range. attribute memory the attribute memory is the primary mechanism for trans- fers of configuration data and status between the host sys- tem and the pcmcia card. as shown in figure 32, the at- tribute memory is segmented into several sections. the card information section is 240 bytes of ram which is loaded by the 380c with information describing the card and its resource requirements, data needed by the host to configure the card. a portion of the attribute memory al- lows the host to access the i/o mailbox registers. lastly, sections in the attribute memory space are assigned to the configuration registers and the base address registers. on the host side, attribute memory is accessible only on even byte addresses. on the 380c side it can be accessed as bytes or words. figure 27. pcmcia interface pcmcia configuration i/o address decoder host pcmcia address/data/control bus internal address/data/control bus attribute memory mimic chip interface control registers select (see figure 32 below) figure 28. pcmcia attribute memory organization card information (ram) contguration registers base address registers card information (ram) 01fe 0110 010e 0100 00fe 00f0 00ee 0000 host address 01ff 0188 0187 0180 017f 0178 0177 0100 380c address i/o mailbox 0200 0206
Z80382/z8l382 high-performance data communications processors zilog 46 p r e l i m i n a r y ds97z382000 host interface (continued) base address registers these seven registers are written by the 380c with the base addresses of 8-byte windows in the host?s i/o ad- dress space which the host can use to communicate with the host-accessible registers in the mimic. configuration registers there are five configuration registers of the pcmcia 3.0 standard and additionally a version number register, two image base address registers, and the seven base ad- dress registers described above. the host accesses these registers to configure the interface and to retrieve status. configuration option register. this register is used on one side to configure the pcmcia interface, controlling items such as type of interrupt, dma enable, and selection of the base address register. on the other side, a reset can be triggered by setting a certain bit. card configuration and status register. this register contains information about the status of the interface, in- cluding whether certain signals have changed, interrupts, and power down. pin replacement register. this register is used to pro- vide the status information which is otherwise provided on the /pcirq pin (rdy/bsy). socket and copy register. the socket and copy regis- ter is implemented for pcmcia hosts expecting this op- tional pcmcia register in a pcmcia card. the register has no function in the z382. extended status register. the extended status register is used to enable and provide status information of exter- nal events. image base address registers. these registers deliver a copy of the configured base address. interface version number register. this register pro- vides the version number of the pcmcia interface. it also contains a bit which can be written to disable attribute memory write protection, allowing the host to write to the attribute memory. z380 control register. the z380 control register (zcr) controls the functions of the pcmcia block by means of the z380 controller. accessible only to the 380c, it controls access to the attribute memory by the 380c and allows the 380c to signal major status changes to the host. decoding and routing functions the pcmcia interface uses the values programmed in the configuration registers to decode a mimic chip select when the host i/o address signals match the programmed conditions. unlike the plug and play interface the pcmcia interface does not perform any routing functions on interrupt and dma control signals. these are performed at the pcmcia socket controller on the host side.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 47 1 dma channels the dma channels of the z382 build on zilog?s experience with the z16c32 iusc. they have only one mode of oper- ation, which combines features of the iusc?s array and linked list modes. each dma channel has a pointer into a list structure, entries in which contain the addresses and lengths of data buffers. since the on-chip peripherals of the z382 all operate with 8-bit data only, particularly the hdlc channels which the dma channels are primarily intended to serve, the dma channels also perform only 8-bit data transfers when oper- ating with data buffers. however, because fetching a new list entry is an overhead operation that can compromise maximum data rates, list accesses use 16-bit transfers. dma channel/device interface the interface between the dma channel and its client de- vice includes six lines: all of these lines are bused, and are driven by the dma channel and its client device that are currently selected by the dma scanner. operation a dma channel starts operating when software loads an address into its list address register (lar). writing the fi- nal (ms) byte of this register sets the channel?s run bit, which makes it request bus access from the processor. when the processor grants bus access, the dma channel proceeds to fetch the first list entry from memory, begin- ning at the address in the lar. list entries always begin at an 8-byte boundary, that is, at an address having its ls three bits ?000?. the general for- mat of a list entry includes eight bytes: the type/status byte defines various kinds of list entries, as follows: data request device to dma terminate device to dma type fetch dma to device data acknowledge dma to device end of buffer dma to device store status dma to device figure 29. general format of a dma list entry 00 end of list 01 transfer in list 02 ready buffer, no command, no end of buffer notitcation 03 ready buffer, no command, notify device at end of buffer 04 buffer in progress 05 completed buffer (no status) 40-7f ready buffer, with command, no end of buffer notitcation 80-bf ready buffer, with command, notify device at end of buffer c0-ff completed buffer (with status) address 7-0 address 15-8 address 23-16 type/status should be 00 length 7-0 length 15-8 address of byte should be 00 [lar23-3] + 000 [lar23-3] + 001 [lar23-3] + 010 [lar23-3] + 011 [lar23-3] + 100 [lar23-3] + 101 [lar23-3] + 110 [lar23-3] + 111
Z80382/z8l382 high-performance data communications processors zilog 48 p r e l i m i n a r y ds97z382000 dma channels (continued) on fetching any type/status value except transfer in list or ready buffer, the dma channel clears its run bit and requests an interrupt if its list interrupt enable bit is 1. this checking of the type/status byte helps prevent disorderly operation as well as buffer-ring wraparound. on fetching a transfer in list entry, the dma channel fetches the address portion of the entry, loads it into its lar, and proceeds to fetch another list entry from that ad- dress. this is the mechanism by which buffer rings and linked lists are constructed. if software needs to know when a certain amount of data has been sent or received, such as an address field in a received hdlc frame, it can set up a buffer of that length with its own list entry. the dma channel can provide an in- terrupt at the end of the buffer if desired. when a dma channel fetches a type/status byte from memory, it asserts the type fetch signal to its client de- vice. this prompts the client device to capture the com- mand if bits d7-6 of the type/status byte are 01 or 10. for example, the hdlc transmitter uses the three ls bits of such a type/status byte to indicate how many bits to send from the last byte of the frame. the hdlc receiver doesn?t use any command bits, so that ready buffer codes, with and without command, are equivalent for hdlc reception. upon fetching any ready buffer entry, the dma channel rewrites the type/status byte to the buffer in progress code, and then fetches the address and buffer length fields and loads them into its buffer address and length registers (bar and blr) respectively. thereafter the dma channel transfers data into or out of the buffer, under control of the data request line from its client device. if there is no request at this point, as would typically be the case when software starts a receive channel, the dma channel relinquishes bus control to the processor or anoth- er dma channel, and goes idle until the device asserts data request and/or terminate. for type/status bytes re- questing notify device at end of buffer, the dma channel will assert its client?s end of buffer line at the appropriate time. once a dma channel has been started and has fetched its first list entry, it does nothing further unless and until its cli- ent device asserts data request and/or terminate. when the client devices does so, the dma channel requests bus access from the processor. when access is granted, or when it is continuing operation after fetching a list entry, the dma channel proceeds as follows: if the device is asserting data request, with or without ter- minate: how (and whether) a client device uses end of buffer is device-dependent. the hdlc transmitter passes this in- dication through its txfifo, and terminates the tx frame after sending the data with which the dma channel assert- ed end of buffer. (because of this facility, the only time that an underrun may occur at the hdlc transmitter is when the dma doesn?t provide data fast enough, inside a frame.) the hdlc receiver doesn?t do anything with end of buff- er, so ready buffer codes with or without eob are equivalent for hdlc receiving. at the end of each data transfer, the dma channel incre- ments the bar by 1 and decrements the blr by 1. if the device signalled data request but not terminate, and the buffer length register has not been counted down to zero, and the burst bit in the channel?s dcsr is set, the dma channel checks data request again. if burst is 0, and/or if the device negates data request, the chan- nel gives the bus back to the processor or another dma channel, else it goes back to do another data transfer. a. the dma channel asserts data acknowledge to the device. b. if its blr indicates the buffer is ending, and the sta- tus/type byte for this buffer said notify device, the dma channel also asserts the end of buffer signal. c. at the same time, the dma channel places the ad- dress in its bar on the address bus, and sets the con- trol signals for a memory read or write per the i/o bit in its dma control/status register (dcsr). d. depending on the data direction, data acknowledge makes the device either provide a byte of data on the data bus, or capture a byte of data from the data bus.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 49 1 if the device signalled data request, but not terminate, and the buffer length register has now been counted down to zero, the dma channel proceeds as follows: terminate the hdlc receiver asserts this signal for an end of frame, abort, or overrun condition. the hdlc transmit- ter does so for an underrun condition. after the dma chan- nel transfers a byte, if the device signals data request and terminate, or if the device signals terminate without data request, the dma channel proceeds as follows: note: if the device encounters an error from which operation can?t continue without processor attention, then after signalling terminate and storing a status byte as described above, the device should refrain from asserting data request until software has done so. (the hdlc transmitter does this for underrun.) per-channel registers there are eight dma channels in the z382. each channel includes the following registers: the lar and dcsr are read/write registers; software can track the progress of a dma by monitoring its lar. bars and blrs are accessible only by using special modes se- lected in the centralized dma control register; the chan- nel stores ending blr values in the list. list address register a three-byte register whose 21 most significant bits con- tain the base address of the current list. the dma channel begins operation when the 380c writes the most signifi- cant byte of this register. the dma controller updates this register as it processes new lists in response to links from previous lists. the three ls bits of the lar are ignored on writing, and always read back as 100 (thus pointing at the current type/status byte in the list). buffer address register the dma controller loads the initial value of the current buffer address into this register from the address field of the current list. at the end of each data transfer, the dma channel increments the bar by one. buffer length register the dma controller loads the initial value of the current buffer length into this register from the buffer length field of the current list. at the end of each data transfer, the dma channel decrements the blr by one. a. it puts the address of the type/status byte (from the lar) on the address bus, and writes the code for completed buffer (no status) into that byte. b. if the dma channel?s buffer ie field indicates interrupt for all buffers, or interrupt for notify buffers and this was a notify buffer, it sets its ip bit to request an inter- rupt. c. it increments the lar to the address following this list entry, and goes back to fetch a new list entry from that address, as described above. a. it places the address of the length field on the ad- dress bus, and writes the current (16-bit) value in its blr to memory at that address and the next higher address. this value enables software to tell how much data was actually written into, or read out of, this buffer. b. it puts the address of the type/status byte on the ad- dress bus, sets the control signals for a memory write, signals completed buffer (with status), and asserts the store status signal to the device. c. in response to store status, the device can place up to 6 bits of status on d5-0. for the hdlc receiver, this status includes overrun, end of frame, abort, crc error, and the residual bit count. for the hdlc transmitter, only underrun will prompt a terminate indication, so the specific status bits are unimportant. d. 1. after the type/status byte has been written, the dma channel advances the lar over this list entry, in other words, to the address of the next entry. e. if the dma channel?s buffer ie field indicates any- thing other than no buffer interrupts, it requests an interrupt. f. the dma channel then goes back to fetch another list entry from the address in the lar, as described above. list address register (lar, 21 bits) buffer address register (bar, 24 bits) buffer length register (blr, 16 bits) dma control/status register (dcsr, 8 bits)
Z80382/z8l382 high-performance data communications processors zilog 50 p r e l i m i n a r y ds97z382000 dma channels (continued) dma control/status register controls items such as i/o direction, enabling/disabling burst mode, and enabling and disabling interrupts. also provides certain per channel dma and interrupt status conditions. centralized dma registers two registers provide overall control and status of the dma subsystem: dma control register (dmacr) this register controls when bus control is returned to the 380c processor after a dma channel has operated. it also provides modes whereby the buffer address and buffer length per-channel registers can be read and written. dma vector register (dmavr this register contains the base interrupt vector for the dma channels. it also identifies, during an interrupt ac- knowledge cycle, the interrupting dma channel. serial communication channels the z382 provides several means of serial data communi- cations. these are the asynchronous serial communica- tion interface (asci), the hdlc controllers, the gci/scit interface and the clocked serial i/o channel. asynchronous serial communications inter- face (asci) the z382 provides two independently programmable as- cis (uarts), each including a flexible baud rate genera- tor. key features of the ascis include: n full-duplex operation n programmable data format e 7- or 8- data bits with optional ninth bit for multiprocessor communication e one or two stop bits e odd, even or no parity n programmable baud rate generator e divide-by-one, divide-by-16 and divide-by-64 modes n up to three modem control signals per channel, depending on operating mode of the z382 n programmable interrupt conditions n four level data/status fifos for the receivers n receive parity, framing and overrun error detection n optional operation with on-chip dma controllers figure 34 below illustrates the major functional blocks within the asci. transmit data register data written to the asci transmit data register (tdr) is transferred to the transmit shift register (tsr) as soon as the tsr is empty. data can be written while the tsr is shifting out the previous byte of data, providing double buffering for the transmit data. data transfers into the tdr can be performed using i/o in- structions or by using one of the dma channels. this dma process loads characters into the tdr as an associated status bit indicates that it has become available for data. n dma control register (dmacr) n dma vector register (dmavr)
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 51 1 figure 30. asynchronous serial communications interface (asci) block diagram internal address/data bus asci transmit data register ch 0: tdr0 asci transmit shift register * ch 0: tsr0 asci receive data fifo ch 0: rdr0 asci receive shift register * ch 0: rsr0 asci control register a ch 0: cntla0 asci control register b ch 0: cntb0 asci status fifo/register ch 0: stat0 asci extension control reg. ch 0: asext0 asci dma control ch 0: adcr0 asci time constant high ch 0: astc0h asci transmit data register ch 1: tdr1 asci transmit shift register * ch 1: tsr1 asci receive data fifo ch 1: rdr1 asci receive shift register * ch 1: rsr1 asci control register a ch 1: cntla1 asci control register b ch 1: cntb1 asci status fifo/register ch 1: stat1 asci extension control reg. ch 1: asext1 asci dma control ch 1: adcr1 asci time constant high ch 1: astc1h txa0 rxa0 /rts0 /cts0 /dcd0 txa1 rxa1 /cts1 asci control cka0 note: * not program accessible interrupt request asci time constant low ch 1: astc1l asci time constant low ch 0: astc0l /rts1 /dcd1 baud rate generator channel 1 baud rate generator channel 0 cka1
Z80382/z8l382 high-performance data communications processors zilog 52 p r e l i m i n a r y ds97z382000 serial communication channels (continued) transmit shift register when the asci transmit shift register receives data from the asci transmit data register, the data is shifted out to the txa pin. when transmission is completed, the next byte (if available) is automatically loaded from the tdr into the tsr and the next transmission starts. if no data is available for transmission, the tsr idles at a continuous high level. receive shift register when the receiver is enabled, the rxa pin is monitored for a low. one-half bit time after a low is sensed at rxa, the asci samples rxa again. if it has gone back to high, the asci ignores the previous low and resumes looking for a new one, but if rxa is still low, it considers this a start bit and proceeds to clock in the data based upon the internal baud rate generator or the external clock at the cka pin. the number of data bits, parity, multiprocessor and stop bits are selected by means of control bits in the cntla and cntlb registers. after the data has been received, the appropriate mp, par- ity and one stop bit are checked. data and any errors are clocked into the receive data and status fifos during the stop bit if there is an empty position available. interrupts, receive data register full flag, and dma requests will also go active during this time. if there is no space in the fifo at the time that the rsr attempts to transfer the re- ceived data into it, an overrun error occurs. receive data fifo when a complete incoming data byte is assembled in the rsr, it is automatically transferred to the fifo, which serves to reduce the incidence of overrun errors. the top (oldest) character in the fifo (if any) can be read by means of the receive data register (rdr). an overrun occurs if the receive fifo is still full when the receiver completes assembly of a character and is ready to transfer it to the fifo. if this occurs, the overrun error bit associated with the previous byte in the fifo is set. the latest data byte is not transferred from the shift register to the fifo in this case, and is lost. once an overrun occurs, the receiver does not place any further data in the fifo until the last good byte received has come to the top of the fifo and sets the overrun latch, and software then clears the overrun latch. when a break occurs (defined as a framing error with the data equal to all zeros), the all-zero byte with its associated error bits are transferred to the fifo if it is not full. if the fifo is full, an overrun is generated, but the break, fram- ing error and data are not transferred to the fifo. any time a break is detected, the receiver will not receive any more data until the rxa pin returns to a high state. data transfers from the receive fifo can be performed us- ing i/o instructions or by using one of the dma channels. this dma process reads characters from the rdr as an associated status bit indicates that data is available. the rxdma request is disabled when any of the error flags (pe, fe or ovrn) is set, so that software can identify with which character a problem is associated. asci status fifo/register this fifo contains parity error, framing error, rx over- run, and break status bits associated with each character in the receive data fifo. the status of the oldest character (if any) can be read from the asci status register, which also provides several other, non-fifoed status conditions. the outputs of the error fifo go to the set inputs of soft- ware-accessible error latches in the status register. writing a 0 to the error flag reset (efr) bit in cntla is the only way to clear these latches. in other words, when an error bit reaches the top of the fifo, it sets an error latch. if the fifo has more data and the software reads the next byte out of the fifo, the error latch remains set and does so until the software writes a 0 to the efr bit. the error bits are cumulative, so if additional errors are in the fifo they will set any unset error latches as they reach the top. baud rate generator the baud rate generator has two modes. the first is the same as that used in most previous zilog processors, such as the z80180, and provides a dual set of fixed clock divide ratios. in the second mode, the brg is configured as a six- teen-bit down counter that divides the processor clock by the value in a software accessible, sixteen-bit, time con- stant register. this allows virtually any frequency to be cre- ated by appropriately selecting the main processor clock frequency. the brg can also be disabled in favor of an ex- ternal clock on the cka pin. the receiver and transmitter will subsequently divide the output of the baud rate generator (or the signal from the cka pin) by 1, 16 or 64 under program control.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 53 1 asci register set each asci contains a set of registers for programming various aspects of its operation. these registers are: hdlc serial channels the z382 features three high-speed serial channels, each comprised of a transmitter and a receiver, which can oper- ate in hdlc or transparent (unframed) modes. all data transfers to and from the hdlc channels are carried out by the dma channels. thus, each hdlc channel must have an assigned dma channel to perform its function. fa- cilities for interrupt-driven or polled transfer of hdlc data are not provided. software can select whether each channel?s i/o is on de- vice pins or on the internal tdm highway (the gci/scit bus in the z382). if device pins are used, they can be con- figured as either a classic synchronous serial interface, or as the interface to an external tdm highway or highways. the differences in pin use are as follows: eight-character fifos on both the transmit and receive side reduce the possibility of overrun and underrun condi- tions to a minimum, at data rates up to and beyond e1 (2.048 mbps). n control register a n control register b n time constant high register n time constant low register n extension control register n status register n receive data register n transmit data register n dma control register n control register a pin tdm operation full time operation txd tri-stated outside the time slot. driven full time rxd sampled within the time slot. sampled in every bit time rxc/bcl common clock for rx and tx. rx clock, optional tx clock txc/fsc frame sync pulse for rx and tx. tx clock in or out. txen asserted within the time slot, optional enable for an external driver. asserted whenever tx is enabled.
Z80382/z8l382 high-performance data communications processors zilog 54 p r e l i m i n a r y ds97z382000 serial communication channels (continued) figure 31. hdlc channel block diagram (one of three channels shown) internal address/data bus transmit fifo * ch 0 transmit shift register * ch 0 transmitter state machine transmit mode register ch 0: tmr0 transmit control/status reg. ch 0: tcsr0 transmit fill register ch 0: tfr0 transmit interrupt register ch 0: tir0 gci/scit interface receive fifo * ch 0 receive shift register * ch 0 receiver state machine receive mode register ch 0: rmr0 receive interrupt register ch 0: rir0 hdlc control logic dma select register ch 0: dsr0 counter access port ch 0: cap0 baud rate generator msb ^ ch 0 baud rate generator lsb ^ ch 0 txd0 txc0/ rxd0 rxc0/ notes: * not program accessible receive tdm start ^ ch 0 receive tdm length ^ ch 0 transmit dma controller dma #x receive dma controller dma #y ^ accessed by means of counter access port fsc0 bcl0 global hdlc vector register hdlcv to rx from tx interrupt request transmit tdm start ^ ch 0 transmit tdm length ^ ch 0 transmit time slot assigner ch 0 receive time slot assigner ch 0 clocking control logic busclk
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 55 1 interface with a common tdm module (for example, gci/scit) the interface between an hdlc channel and the gci/scit module includes: tdm processing when the transmit (receive) tdm length register is non- zero, the transmitter (receiver) activates its time slot as- signer to clock tx (rx) data only within the time slot. if a tdm start register is non-zero, then after each pulse on frame sync, the time slot assigner blocks clocking for the number of bits specified by the tdm start register. then, or immediately at frame sync if the start value is zero, it enables clocking for the number of bits specified by the tdm length register. thereafter, it again blocks clocking until the next frame sync pulse. for example, the start and length values for the gci subchannels are: type/status bytes in dma lists note: please refer to the description of type/status bytes in the section on the dma channels in conjunction with this topic. type/status bytes in transmitter dma lists. in hdlc mode, a frame to be transmitted can be contained in one or more dma buffers. the dma list entry for the last (or only) buffer of a frame should have its type/status byte coded as ready buffer, notify at end of buffer. this makes the transmitter send the crc (if enabled) and a closing flag after the last byte of the buffer. buffers that do not include the end of a frame should have their type/sta- tus bytes coded as ready buffer, no end of buffer notifi- cation. two control fields for the transmitter do not reside in pro- cessor-accessible register bits, but can be controlled sep- arately for each frame in type/status bytes in the dma list: either of these items can be changed automatically from one frame to the next if the type/status byte for the frame is coded as ready buffer, with command and the control bits of that byte are set appropriately. in hdlc modes or in transparent mode with the underrun wait bit set to 1, completed buffer codes in type/status bytes in transmitter dma lists are stored as with status if the transmitter encountered an underrun while sending the data in the buffer. in all other cases, type/status bytes in transmitter dma lists are stored as no status. type/status bytes in receiver dma lists. hdlc re- ceivers do not use the command nor end of buffer notifi- cation features of the dma channels. thus all ready buff- er codes in type/status bytes in receiver dma lists are equivalent. a received frame can be contained in one dma buffer, or can span two or more buffers. the end of a frame always makes the receiver terminate its current dma buffer and store frame status in its type/status byte. when a buffer is filled with receive data, without the last character of the frame being stored in that buffer, that buff- er?s type/status byte is stored as completed buffer (no status). buffers that include the last character of a frame, and buffers that couldn?t be completed because the re- ceiver encountered an overrun condition, are stored as completed buffer (with status). the least significant five bits of such a type/status byte indicate the status of the buffer. txd a bused line onto which hdlc transmitters place data in their time slots, as directed by software programming. rxd a bused line from which hdlc receivers take data in their time slots, as directed by software programming. bcl a common bit clock for hdlc transmitters and receivers. transmitters change data on txd on falling edges of bcl, and receivers sample data from rxd on rising edges of bcl. fsc frame sync, synchronous to bcl. transmitters and receivers measure their time slots independently from the rising edge of this signal. the duration of fsc can be one or more bcl cycles. txen an output from each transmitter to the common tdm module, indicating its time slot, that is, when it is placing data on txd. channel start length b1 (64k bps) 0 8 b1 (56k) 0 7 b2 (64k) 8 8 b2 (56k) 8 7 d242 ic1 32 8 ic2 40 8 1. how many bits the transmitter sends from the last byte of the frame. 2. whether the transmitter sends its accumulated crc at the end of the frame.
Z80382/z8l382 high-performance data communications processors zilog 56 p r e l i m i n a r y ds97z382000 serial communication channels (continued) baud rate generator and dpll if an hdlc channel?s tx clock is taken from its baud rate generator (brg), and/or its rx clock is taken from its dpll, then the channel?s brg operates. a brg counts down from the 16-bit value programmed into its time con- stant ls and ms registers, using the processor?s bus- clk. each time the value is zero, the brg toggles its out- put to the dpll, and one clock later it reloads the value from the time constant registers. if an hdlc channel?s rx clocking is taken from its dpll, software should program the channel?s time constant registers with a 16-bit value that corresponds to 16 times the nominal data rate. conceptually, when the dpll de- tects a change on the raw rx data (before nrzi decod- ing), it clears a counter that is incremented at 16x the nom- inal bit rate. half a bit time thereafter, it provides an active edge on its rx clock output. thereafter, in the absence of further data transitions it provides the rx clock as the brg output divided by 16. per-channel registers each hdlc channel includes the following i/o-mapped registers that can be read and written by the 380c proces- sor: transmit mode register. selects the main operating mode of the transmitter (transparent, hdlc, nrzi hdlc), its i/o configuration (tdm, i/o by means of device pins, and so on), when dma data transfers are requested, and action to be taken if an underrun occurs. tx control/status register. controls the minimum num- ber of bits sent between frames and the minimum number of bits sent after the transmitter is enabled before the first data character of a frame is sent, what the transmitter sends between frames, and the type of crc used. it also provides feedback on the current state of the transmitter. transmit interrupt register. controls and provides sta- tus of potential interrupting conditions in the transmitter. it also provides the mechanism for clearing conditions which are causing an interrupt. transmit fill register. holds a character that can be sent between frames in hdlc mode, or in case of an underrun in transparent mode. receive mode register. selects the main operating mode of the receiver (transparent, hdlc, nrzi hdlc), its i/o configuration (tdm, i/o by means of device pins, and so on), when dma data transfers are requested, when the receiver begins assembling characters when it is switched from the inactive state to transparent mode, and the type of crc used in hdlc modes. receive interrupt register. most of the interrupt require- ments for hdlc reception can be handled by enabling status interrupts in the dma channel associated with each receiver. the only receiver interrupt condition that is not handled by this means is the idle condition. idle interrupts are controlled by this register. this register also allows several commands which deal with interrupts and hunt mode to be issued to the receiver. dma select register. selects the dma channels to be used by the receiver and transmitter and enables their op- eration. counter access port. allows the 380c to write and read the starting values for various counters in the hdlc chan- nel. these are the baud rate generator time constant, the transmitter tdm start and length values, and the receiver tdm start and length values. global hdlc vector register this register provides the base interrupt vector for the hdlc channels and identifies the hdlc device which is causing an interrupt to be issued. n transmit mode register n transmit control/status register n transmit interrupt register n transmit fill register n receive mode register n receive interrupt register n dma select register n counter access port
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 57 1 gci/scit interface gci/scit frame structure (terminal mode) gci/scit includes three sub-frames called channels 0, 1, and 2; each containing 32 bits. this 12-byte frame is re- peated at a rate of 8 khz, which gives an aggregate data rate of 768 kbits/second. the frame structure is shown in figure 36 below. b channels. b1 and b2 are the first two 8-bit time slots af- ter the frame sync pulse. each b channel provides 64 kbps of user data to/from the network. monitor channels. there are two channels, monitor 0 and monitor 1. each channel consists of eight bits of data and two associated handshake bits, mr and mx, that con- trol data flow. d channel. the 16 kbps d channel (2 bits per frame) pro- vides a connection between the layer two and layer one components. command/indicate channels. three command/indicate channels, c/i0, c/i1 and c/i2 are provided. each sub- frame has one. (c/i2 is the same as tic, as indicated be- low.) these channels provide real-time status between de- vices connected by means of the gci/scit bus. intercommunication channels. two intercommunica- tion subchannels are provided in gci channel 1. these provide 64 kbps data paths between user devices. tic bus. this is the same as c/i2 and is used for d chan- nel access with some gci/scit devices. it allows multiple layer-2 devices to individually gain access to the d and c/i channels located in the first sub-frame. the data signals on the gci/scit bus are called data up- stream (du) and data downstream (dd). while each of these is a bus that can be sensed as well as driven in an open-drain (open-collector) fashion by the z382 and other devices, gci practice defines certain fields on each line to flow in certain directions. the z382 always receives from dd and (when enabled) drives du in the b2, mon0, d, c/i0, and mx0 fields. the 382 always receives from du and (when enabled) drives dd in the mr0 bit. which line is driven and which is re- ceived can be selected by software for the ic1, ic2, mon1, and c/i1 fields and the mx1 and mr1 bits, with mr1 always being in the opposite direction from mon1 and mx1. monitor channel operation the monitor channels are full duplex and operate on a pseudo-asynchronous basis, in other words, data trans- fers take place synchronized to frame sync but the flow is controlled by a handshake procedure using the mx and mr bits. the handshake procedure (flow of events) is shown in figure 37 below. idle: the mx and mr pair being held inactive (high) for two or more frames constitutes the channel being idle in that direction. the data received in the monitor channel is invalid and should be 11111111. figure 32. gci/scit frame structure dd fs 88 8 24 2 88 8 b1 b2 mon0 d c/i0 mr-mx ic1 ic2 mon1 c/i1 mr-mx c/i2 du b1 b2 mon0 d c/i0 mr-mx ic1 ic2 mon1 c/i1 mr-mx c/i2 gci channel 0 gci channel 1 gci channel 2 6 2 8882 4 2
Z80382/z8l382 high-performance data communications processors zilog 58 p r e l i m i n a r y ds97z382000 serial communication channels (continued) start of transmission: the first byte of data is placed on the bus and mx is activated (low). mx remains active, and the data is repeated until an inactive-to-active transition of mr is received, indicating that the data has been captured by the receiver. subsequent transmissions: the second and subse- quent bytes are placed on the bus after the inactive to ac- tive transition of mr. at the time that the second byte is transmitted, mx is returned inactive for one frame time only; the data is valid in the same frame. in the following frame, mx returns active again and the same byte is trans- mitted. data is repeated in subsequent frames and mx re- mains active until acknowledgment is detected (mr transi- tion from inactive to active). maximum speed case: the transmitter is capable of min- imizing the delay between bytes to achieve higher data throughput than is provided by the general case described above. the first and second bytes are transmitted normal- ly, however, starting with the third byte, the transmitter will deactivate mx and transmit new data one frame time after mr is deactivated. in this way, the transmitter is anticipat- ing that mr will be reactivated, which it will do one frame time after it is deactivated, unless an abort is signalled by the receiver. end of message (eom): the transmitter sends an eom, normally after the last byte of data has been transmitted, by not reactivating mx after deactivating it in response to mr going inactive. reception: at the time the receiver sees the first byte, in- dicated by the inactive-to-active transition of mx, mr is by definition inactive. in response to the activation of mx, the data is read off the bus and mr is activated. mr remains active until the next byte is received or an end of message is detected. subsequent data is received from the bus on each falling edge of mx, and a monitor channel receive data available interrupt is generated. note that the data may actually be valid at the time that mx went inactive, one frame time prior to going active. mr is deactivated after the data is read and reactivated one frame time later. the transmitter will detect mr going inactive and anticipate its reactivation one frame later. the reception of data is termi- nated by the reception of an end of message indication. abort: the abort is a signal from the receiver to the trans- mitter indicating that the data has been missed. it is not an abort in the classical sense, which is an indication that the current message should be ignored. the receiver indi- cates an abort by holding mr inactive for two or more frames in response to mx going inactive. flow control: the receiver can hold off the transmitter by keeping mr active until the receiver is ready for the next byte. the transmitter will not start the next transmission cy- cle until mr goes inactive.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 59 1 monitor channel handling before transmitting data on a monitor channel, the proces- sor should look at the monitor 0 or 1 active status bit in gci status register 2 to verify that the channel is inactive. the processor can then write the data to the monitor transmit data register. this will enable the gci hardware to pro- ceed with the transmission of this data according to the monitor channel protocol. on receiving an acknowledge from the receiver, the transmit data request bit in gci sta- tus register 1 is set, indicating that the monitor channel is ready to transmit another byte of data. when the last byte has been acknowledged by the receiver, the processor can set the eom request bit in the gci control register and the monitor channel will then send an end of message signal. on receiving the monitor data, the receiver will write this data to the monitor receive register and set the appropriate status bit. this will generate a monitor receive data avail- able interrupt, instructing the processor to read this data. succeeding bytes of data are received in accordance to the monitor channel protocol and the processor is in- formed by means of the monitor receive data available in- terrupt. the processor can force the receiver to ask for an abort by setting the abort request bit. the receiver will ask for an abort in transmission by sending an inactive mr for two consecutive frames. the abort transmission is indicat- ed in the status bit by the transmitter. c/i channel operation data on c/i0 and c/i1 is transmitted continuously in each frame until new data is to be sent. a change in c/i channel data is considered valid if it has been received in two con- secutive frames. gci/scit bus activation and deactivation deactivation, upstream to downstream. the upstream (clock master) unit can initiate deactivation by issuing a se- ries of software handshakes by means of the c/i0 channel. having done so, the upstream unit waits for a deactivation indication from all downstream (clock slave) units. once this is received, a deactivation confirmation is issued, fol- lowed by stopping the clocks (forcing them low) and plac- ing the data pin in a high impedance state. after the clocks are stopped, the input pin is monitored for the presence of figure 33. monitor handshake timing new last new first mx /mx mr /mr transmitter receiver ack ack ack eom mx /mx mr /mr transmitter receiver mx /mx mr /mr transmitter receiver a. general case b. abort request from the receiver c. maximum speed case eom abort request first first byte 3rd 2nd eom ack 2nd byte ack ack 3rd byte 125 m sec byte byte byte byte byte byte byte
Z80382/z8l382 high-performance data communications processors zilog 60 p r e l i m i n a r y ds97z382000 serial communication channels (continued) a timing request from the downstream unit (the pin being pulled low). deactivation request, downstream to upstream: de- activation is normally initiated by the upstream device as described above. when the downstream device receives the deactivation request over the c/i0 channel, it must re- spond by sending the deactivation indication. activation request, downstream to upstream: the downstream device can request that the clocks be started by pulling its data output line low. once the clocks are started, the downstream unit requests activation by send- ing an activation request over the c/i0 channel. activation, upstream to downstream: the upstream unit activates the bus by starting the clocks and following the c/i0 channel-based activation procedure. b1, b2, d, ic1, ic2 channel data: rx data and the bit clock are supplied to the hdlc cells, and tx data is taken from the hdlc cells. each hdlc transmitter and receiv- er includes a time slot assigner which can be pro- grammed for any of the subchannels shown above. note: the hdlc transmitters signal when they are sending data. this signalling should not conflict with transmission by the gci/scit module, but if it should, the hdlc modules have priority. gci/scit registers the gci/scit interface includes the following i/o-mapped registers that can be read and written by the 380c proces- sor: gci control register. controls the monitor 1 and c/i1 di- rection, the clock activation request to the master, en- abling/disabling monitors 1 and 0, and monitors 1 and 0 eom and abort requests. monitor 0, monitor 1, c/i0 - c/i2 and c/i1transmit data registers. data written into these registers is transmitted on the respective channels in accordance with the gci/scit protocol. monitor 0, monitor 1, c/i0 - c/i2 and c/i1receive data registers. data received from the respective channels in accordance with the gci/scit protocol is written into these registers. gci status register 1. provides receive and transmit sta- tus conditions for monitor 0 and 1 channels. gci status register 2. provides additional status condi- tions for the gci/scit module. gci interrupt enable register. provides control of inter- rupts from the various channels in the gci/scit module. clocked serial i/o (csio) the z382 includes a synchronous serial i/o port (csi/o) which provides half-duplex transmission/reception of fixed 8-bit data at a speed of up to busclk/20 bits/second. the csi/o is ideal for implementing a multiprocessor commu- nication link between multiple z80xxx family members. a block diagram of the csi/o is illustrated below. note that the three pins associated with the csi/o are mul- tiplexed with other signals and must be configured for csi/o operation in order to use the csi/o as described in this section. n gci control register n monitor 0 transmit data register n monitor 0 receive data register n monitor 1 transmit data register n monitor 1 receive data register n c/i0 - c/i2 transmit data register n c/i0 - c/i2 receive data register n c/i1 transmit data register n c/i1 receive data register n gci status register 1 n gci status register 2 n gci interrupt enable register figure 34. csi/o block diagram internal address/data bus csi/o transmit/receive data register: trdr csi/o control register: cntr baud rate generator txs rxs cks f interrupt request
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 61 1 csi/o registers the csi/o channel includes the following i/o-mapped reg- isters that can be read and written by the 380c processor: csi/o control register. cntr is used to monitor csi/o status, enable and disable the csi/o, enable and disable interrupt generation, and select the data clock speed and source. csi/o tx/rx data register. trdr is used for both csi/o transmission and reception in a half-duplex protocol. thus, the system design must ensure that transmit and receive operations do not occur simultaneously. for example, if a csi/o transmission is attempted while the csi/o is receiv- ing data, a csi/o will not work. also, the trdr is not buff- ered. thus, attempting to perform a csi/o transmit while the previous transmit data is still being shifted out causes the shift data to be immediately updated, corrupting the transmit operation in progress. similarly, reading trdr while a transmit or receive is in progress must be avoided. counters, timers and other miscellaneous logic programmable reload timer the z382 contains two separate 16-bit programmable re- load timers (prt). each prt channel contains a 16-bit down counter and a 16-bit reload register. the down counter can be directly read and written and a down counter overflow interrupt can be programmably enabled or disabled. also, prt1 can be programmed to set the t out pin high or low or to toggle it when the channel counts down to zero. thus, prt1 can perform programmable out- put waveform generation. the two channels share a common status/control register and a timer prescale register which allows the time base for each prt to be programmed as the z382 busclk di- vided by a power of two. prt common registers the prts share two i/o-mapped registers that can be read and written by the 380c processor: timer prescale register. selects the rates at which each prt is clocked, providing for busclk divisors ranging from 1 to 32,768. timer control register. the tcr monitors the status of both prt channels and controls enabling and disabling of down counting and interrupts. it also controls the effect of prt1 on the t out output pin. prt per channel registers the i/o-mapped per-channel registers in each prt are: timer data registers. each prt has a 16-bit timer data register (tmdr). tmdr is decremented once every clock output from the timer prescaler, which divides the bus- clk signal of the z382 by a value which is specified, inde- pendently for prt1 and prt0, in the tpr. when tmdr n transmit/receive data register n csi/o control register figure 35. programmable reload timer block diagram internal address/data bus timer reload reg. low ch 1: rldr1l interrupt request busclk timer reload reg. high ch 1: rldr1h timer data reg. low ch 1: tmdr1l timer data reg. high ch 1: tmdr1h timer prescale register tpr timer reload reg. low ch 0: rldr0l timer reload reg. high ch 0: rldr0h timer data reg. low ch 0: tmdr0l timer data reg. high ch 0: tmdr0h timer control register tcr tout n timer prescale register n timer control register n timer data registers high/low n timer reload registers high/low
Z80382/z8l382 high-performance data communications processors zilog 62 p r e l i m i n a r y ds97z382000 counters, timers and other miscellaneous logic (continued) counts down to 0, it is automatically reloaded with the val- ue contained in its timer reload register (rldr). timer reload registers. each prt has a 16-bit timer reload register (rldr) when a prt channel?s tmdr counts down to 0, it is automatically reloaded with the con- tents of its rldr. figure 40 below illustrates the operation of the prt. figure 36. prt operation ffffh 0004h 0003h 0002h 0001h 0000h 0003h 0002h 0001h 0000h 0003h timer data register write (0004h) timer data register timer reload register timer timer reset f f f f f f f f f 0 < t < f timer reload register ffffh 0003h reload reload write 1 to tde timer data register read timer control register read note: f is busclk divided by the value specified in tpr. write (0003h) downcount enable interrupt flag
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 63 1 watch-dog timer a watch-dog timer (wdt) with programmable timeout in- tervals prevents code runaway and possible resulting sys- tem damage. the /reset input can be forced as an out- put upon the terminal count of the wdt, allowing external peripherals to be reset along with the z382. unlike other on-chip functions, the wdt is enabled at reset and must be disabled by software if its function is not desired. if soft- ware does not disable the wdt, it must periodically clear the wdt in order to avoid a hardware reset of the entire chip. the block diagram of the wdt is shown below (fig- ure 41). wdt registers the csi/o channel includes the following i/o-mapped reg- isters that can be read and written by the 380c processor: watch-dog timer master register. this register controls enabling/disabling of the wdt, its period, and whether the /reset pin is driven to reset external devices when the wdt times out. wdt command register. the wdt decodes two values written to this register.one value is used to reset the wdt to a count of zero, the second value must be written to this register in order to disable the wdt. parallel ports the z382 has four 8-bit bidirectional ports called ports a through d. a direction register associated with each port allows each bit of the port to be programmable as an input or an output. because of pin multiplexing, ports a and d are available only in non-host applications, and the registers for ports a and d are used by the mimic feature in host applications. additional information on the multiplexing of the port pins is provided in the device configuration section of this doc- ument. each port contains two registers accessible in the 380c?s i/o address space: bit 3 in the system configuration register controls wheth- er only the lowest eight address lines are decoded, allow- ing the port data and direction registers to be accessed in any page of i/o space (as on the z18x family), or whether access is limited to a single page (a[15-8] = 0). port direction register the direction register determines which pins of the port are inputs and which are outputs. in host applications, the port a and d direction registers are used to buffer data between the host?s hd7-0 lines and the z382 for the host dma mailbox and host i/o mailbox functions. port data register when the 380c writes to the data register of an available port, the data is stored in this register. any pins that are identified as output in the corresponding port direction register are then driven with the new data. when the 380c reads the data register of an available port, the data on the external pins is returned. in host applications, the port a and d data registers are used for implementation of the host i/o mailbox feature. i/o chip selects two i/o chip selects, /iocs1 and /iocs2, are provided to support i/o access of external peripherals. these chip se- lects are asserted low when some number of the 16 lsbs of the current 380c address match the values pro- grammed in the iocs registers.the number of bits actual- ly compared is specified in one of the registers, providing i/o decode sizes ranging from 8 to 512 bytes. address comparisons take place during both memory and i/o cycles. the i/o chip selects are not asserted in in- tack cycles. figure 37. wdt block diagram n wdt master register n wdt command register internal address/data bus wdt master register wdtmr wdt command register wdtcr timeout generator f wdt out n port direction register n port data register
Z80382/z8l382 high-performance data communications processors zilog 64 p r e l i m i n a r y ds97z382000 counters, timers and other miscellaneous logic (continued) i/o chip select registers the following i/o-mapped registers are associated with the i/o chip selects and can be read and written by the 380c processor: i/o chip select 1/2 high and low address registers. specify the base address and the i/o block size for i/o chip selects 1 and 2. ram and rom chip selects three memory chip select outputs are provided: /romcs, /ramcsl, and /ramcsh. they support both 8- and 16- bit memories, and are asserted for a selected address range (4 kb to 8 mb) during both memory and i/o cycles. unlike chip select and /msize signalling, wait state gen- eration can be specified which occurs only during memory cycles. for the selected rom and/or ram range, the /msize pin can be programmed to be forced low in an open-drain fashion when the address is in the programmed range, thus forcing 8-bit accesses in one or both ranges. when /msize is forced for 8-bit ram in this way, /ramcsl is as- serted for all cycles in the selected address range, and the /ramcsh pin assumes its alternate use as port pin pc7. when /msize is not forced for 8-bit ram, /ramcsl is qualified by /blen, and /ramcsh acts as a chip select output pin and is qualified by /bhen. ram and rom chip select registers the following i/o-mapped registers are associated with the ram and rom chip selects and can be read and writ- ten by the 380c processor: ram address high and low registers: specify which bits of the address bus are used in the address compari- son and thus, implicitly, the memory block size. this can range from 4 kb to 8 mb. rom address high and low registers: specify which bits of the address bus are used in the address compari- son and thus, implicitly, the memory block size. this can range from 4 kb to 8 mb. memory mode register 1. enables the rom chip select, specifies the number of wait states for the rom chip se- lect, and specifies the number of t1 wait states for the ram chip select. memory mode register 2. enables the ram chip select, specifies 8- or 16-bit memory accesses for the ram and rom chip selects independently, and specifies the num- ber of t2 and t3 wait states for the ram chip select. interrupt logic the z382?s interrupt structure provides compatibility with the existing z80 and z180 with the following exception: the undefined opcode trap?s occurrence is with respect to the z380 instruction set, and its response is improved (versus the z180) to make trap handling easier. the z380 offers additional features to enhance flexibility in system design. of the five external interrupt inputs provided, /nmi is a non- maskable interrupt. the remaining inputs, /int3-0, are asynchronous maskable interrupt requests. in an interrupt acknowledge transaction, address outputs a23-4 are driven to a logic high. one output among a3-0 is driven low to indicate the maskable interrupt request being acknowledged. for example, when /int0 is being acknowledged, a3-1 are high and a0 is low. interrupt modes 0 through 3 are supported for maskable interrupt request /int0, which can be driven by external and on-chip sources. modes 0, 1 and 2 have the same schemes as those in the z80 and z180. mode 3 is similar to mode 2, except that 16-bit interrupt vectors are expect- ed from the i/o devices. note that 8-bit and 16-bit i/o de- vices can be intermixed in this mode by having external pull up resistors at the data bus signals d15-8, for exam- ple. the external maskable interrupt requests /int3-1, as well as the less complex on-chip peripherals (prts, ascis, and csi/o) are handled in an assigned interrupt vectors mode. int3-1 can be used as low or high active level- sensitive inputs, or as falling or rising edge-triggered in- puts. the z382 can operate in either the native or extended mode. in native mode, pushing and poping of the stack to save and retrieve interrupted pc values in interrupt han- dling are done in 16-bit sizes, and the stack pointer rolls over at the 64-kb boundary. in extended mode, the pc pushes and pops are done in 32-bit sizes, and the stack pointer rolls over at the 4-gb memory space boundary. the z382 provides an interrupt register extension, whose contents are always output as the address bus signals a23-16 when fetching the starting addresses of service routines from memory in interrupt modes 2 and 3 and the assigned vectors mode. in native mode, such fetches are automatically done in 16-bit sizes and in extended mode, n i/ocs1 high and low address registers n i/ocs2 high and low address registers n ram address high and low registers n rom address high and low registers n memory mode register 1 n memory mode register 2
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 65 1 in 32-bit sizes. these starting addresses should be even- aligned in memory locations. that is, their least significant bytes should have addresses with a0 = 0. interrupt priority ranking the z382 assigns a fixed priority ranking to handle its ma- jor categories of interrupt sources, as follows: int0 peripherals those on-chip peripherals capable of generating their own interrupt vectors, including the mimic, dmas, and hdlc controllers, have their interrupt requests logically or?ed with the external /int0 pin to produce the int0 signal pre- sented to the 380c processor. these interrupt sources are consecutive in the int0 daisy-chain, but their relative pri- ority can be programmed in the system configuration register. their priority relative to external int0 sources is controlled by how the z382?s iei and ieo pins are connect- ed. assigned interrupt vectors mode (int1-3, prts, csi/o, ascis) when the z382 recognizes /int1-3, or a request from an on-chip peripheral that cannot supply an interrupt vector (a prt, csi/o, or asci), it generates an interrupt acknowl- edge transaction which is different from that for /int0. this interrupt acknowledge transaction has /iorq active for external monitoring purposes, but /m1, /iord, and /iowr inactive so as not to stimulate external devices. the inter- rupted pc value is pushed onto the stack. ief1 and ief2 are cleared, disabling further maskable interrupt requests. the starting address of an interrupt service routine is fetched from a table entry and loaded into the pc to re- sume execution. the address of the table entry is com- posed of the i extend contents as a31-16, the seven vec- tor base bits of the assigned vectors base register as a15-9 and an assigned interrupt vector specific to the re- quest being recognized as a8-0. the assigned vectors are as follows: trap interrupt the 380c generates a trap when an undefined opcode is encountered. the trap is enabled immediately after reset, and it is not maskable. this feature can be used to in- crease software reliability or to implement extended in- structions. an undefined opcode can be fetched from the instruction stream, or it can be returned as a vector in an interrupt acknowledge transaction in interrupt mode 0. nonmaskable interrupt the nonmaskable interrupt input /nmi is edge sensitive, with the 380c internally latching the occurrence of its fall- ing edge. when the latched version of /nmi is recognized, the interrupted pc (program counter) value is pushed onto the stack, certain status flag manipulations are per- formed, and the 380c commences to fetch and execute in- structions from address 00000066h. reti instruction the original z80 family i/o devices (pio, sio, ctc) are designed to monitor the return from interrupt opcodes in the instruction stream, signifying the end of the current in- terrupt service routine. on the z382, the m1 signal is active during all instruction fetch transactions. since the z382 may not execute an reti that it fetches, and because it supports a 16-bit data bus, only half of which is visible to an 8-bit peripheral, the z382 does not support reti de- coding by the pio, sio, and ctc. priority interrupt sources highest trap (undetned opcode) /nmi /int0 (includes dmas, mimic, hdlc controllers) /int1 /int2 gci/scit prt0 prt1 csi/o asci0 asci1 plug and play isa or pcmcia i/o mailbox lowest /int3 interrupt source assigned interrupt vector /int1 00h /int2 04h reserved 08h gci/scit 0ch prt0 10h prt1 14h csi/o 18h asci0 1ch asci1 20h plug and play or pcmcia 24h i/o mailbox 28h /int3 2ch
Z80382/z8l382 high-performance data communications processors zilog 66 p r e l i m i n a r y ds97z382000 counters, timers and other miscellaneous logic (continued) interrupt registers the following i/o-mapped registers are associated with in- terrupts and can be read and written by the 380c proces- sor: interrupt enable register. provides the current status of the /int3-0 pins and controls whether /int3, /int2, /int1, and /int0 are enabled or disabled. note that these flags are also affected by enable and disable interrupt instruc- tions (di (n) and ei (n)). assigned vectors base register. the interrupt register extension, iz, together with the contents in bits 1-7 of this register, define the base address of the assigned interrupt vectors table in memory space. int3-1 control register. controls when and how the z382 recognizes an interrupt on the corresponding pins (high or low level sensitive, falling or rising edge trig- gered) and provides the means for clearing edge triggered interrupt requests if such are specified for /int3-1. trap and break register. two bits of this register provide status on traps. one bit is set if an undefined opcode is fetched in the instruction stream. a second bit is set if an undefined opcode is returned as a vector in an interrupt ac- knowledge transaction in mode 0. z380-compatible peripheral functions the z382 incorporates a number of z80380 compatible functions. the z382?s i/o bus can be programmed to run at a slower rate than its memory bus. in addition, a heart- beat transaction can be generated on the i/o bus that em- ulates a z80 instruction fetch cycle. such cycles are need- ed for a particular z80 family i/o device to perform its interrupt functions. finally, a dram refresh function is in- corporated, with programmable refresh transaction burst size. i/o bus control the z382 is designed to interface easily with external i/o devices that can be of either the z80 or z8500 product family by supplying four i/o bus control signals: /m1, /iorq, /iord, and /iowr. in addition, the z382 supplies an ioclk that is a divided down version of its busclk. programmable wait states can be inserted in the various i/o transactions. dram refresh the z382 is capable of providing refresh transactions to dynamic memories that have internal refresh address counters. a user can select how often refresh requests should be made to the z80?s external interface logic, as well as the burst size (number of refresh transactions) for each request iteration. the external interface logic grants these requests by performing refresh transactions with cas-before-ras timing on the /trefr, /trefa and /trefc bus control signals. in these transactions, /bhen, /blen and the user specified chip select signal(s) are driv- en active to facilitate refreshing all the dram modules at the same time. a user can also specify the t1, t2 and t3 waits to be inserted. note: the z382 cannot provide refresh transactions when it relinquishes the system bus, with its /breq input active. in that situation, the number of missed refresh requests are accumulated in a counter, and when the z382 regains the system bus, the missed refresh transactions will be performed. low power standby mode the z382 provides an optional standby mode to minimize power consumption during system idle time. if this option is enabled, executing the sleep instruction stops the z382?s oscillator if it is in use, and in any case stops clock- ing internal to the z382 (except to prt0 if it is enabled) and at the busclk and ioclk outputs. the /stnby and /halt signals go low to indicate that the z382 is entering the standby mode. all z382 operations are suspended, the bus control signals are driven inactive and the address bus is driven high. standby mode can be exited by asserting any of the /reset, /nmi, /int3-/int0 (if enabled), or op- tionally, /breq inputs. if standby mode is not enabled, the sleep instruction does not stop the z382?s oscillator if it is in use, but blocks clock- ing from internal modules, except prt0 if it is enabled. in this case, /stnby (but not /halt) goes low to indicate the z382?s status. n interrupt enable register n assigned vectors base register n int3-1 control register n trap and break register
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 67 1 peripheral function control registers the functions described above are controlled by a number of i/o mapped on-chip registers: clock control register. controls how busclk is de- rived from the input clock (clki, clki/2 or clki x 2), pro- vides a means of disabling clko to save power and re- duce noise if an external clock is used, and controls the i/o clock rate (busclk/8 to busclk). i/o waits register. allows for up to seven wait states to be inserted in external i/o read and write transactions, and at the latter portions of interrupt transactions to capture in- terrupt vectors. also allows for up to seven wait states to be inserted at the early portions of interrupt acknowledge transactions, for the interrupt daisy chain through on-chip and possibly external i/o devices to settle. refresh register 0. defines the interval between refresh requests to the z382?s external interface logic. refresh register 1. provides the missed requests count. this count increments by one when a refresh re- quest is made and decrements by one when the z382?s external interface logic completes each burst of refresh transactions. a user can read the count status, and if nec- essary, take corrective actions such as adjusting the burst size. refresh register 2. enables the refresh function and de- fines the number of refresh transactions per refresh re- quest made to the z382?s external interface logic. refresh wait register. defines the number of t1, t2 and t3 wait states to be inserted in refresh transactions. standby mode control register. enables the z382 to go into low-power standby mode when the sleep instruction is executed, allows asserting /breq to exit the mode, and specifies the approximate running duration of a warm-up counter that provides a delay before the z382 resumes its clocking and operations, from the time an interrupt or bus request (if so enabled) is asserted to exit standby mode. device configuration in addition to the configuration options provided in the reg- isters associated with each of the major functional blocks in the z382, there are two registers which control the over- all device configuration: n clock control register n i/o waits register n refresh registers 0, 1 and 2 n refresh wait register n standby mode control register n system configuration register n pin multiplexing register
Z80382/z8l382 high-performance data communications processors zilog 68 p r e l i m i n a r y ds97z382000 counters, timers and other miscellaneous logic (continued) system configuration register the system configuration register controls the major modes of the z382: n how pins 60 - 92 are used: e connected to the isa bus of a host pc; e connected to the pcmcia bus of a host pc; e used for the ascis, csi/o, and ports a and d, except that the full-time outputs among these signals (txa0, txa1, rts0, txs) are disabled; e used for the ascis, csi/o, and ports a and d, including the txa0, txa1, rts0, and txs outputs. n how pins 110-112 are used: e /dcd0, /cts0, /cts1 asci control signals; e trefa, trefc, and trefr dram control signals. n d15 - 0 use during reads from on-chip i/o devices: e the d15-0 pins are driven as outputs from the z382; e the pins are left tri-stated to reduce power consumption, noise, and emi/rfi to some extent. n i/o address decoding of the mimic and parallel ports: e a15-8 must be zero to access these features; e the address decoding for these ports disregards address lines above a7, so that these devices are replicated in each 256-byte page of i/o space as on the z80182, 187, and 189. n the relative interrupt priority of the mimic, hdlc channels, and dma channels on the int0 daisy chain. in addition to the control above, certain pins are multi- plexed automatically based on the state of register bits in their associated functions. pin multiplexing register the pin multiplexing register controls smaller-scale pin multiplexing issues than those handled in the system con- figuration register. n whether the pins normally used for hdlc 0 are used for asci0 signals instead. n whether the pins normally used for hdlc 1 are used for asci1 signals instead. n the functions of pins 47, 48, 49, 53, 56, 57, 58 and 109. programable low noise drivers to help reduce noise generated by the output switching of the z382, selected outputs can be placed in a reduced drive configuration. when a pin is placed in low noise mode, its drive is reduced to 1/3 of its normal output drive current. this decreases the slew rate of the driver, which reduces current spikes induced onto the power bussing of the z382. the output drive control register provides this function for a number of groups of z382 output or i/o pins.
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 69 1 z382 i/o register maps z80380-compatible registers Z80382 asci, prt, csio, wdt registers register name z382 address z380 address access assigned vectors base register %0018 %0018 r/w trap and break register %0019 %0019 r/w i/o waits register %001e %000e r/w refresh waits register %001f %000f r/w clock control register %0021 %0011 r/w refresh register 0 %0023 %0013 r/w refresh register 1 %0024 %0014 r/w refresh register 2 %0025 %0015 r/w standby mode control register %0026 %0016 r/w interrupt enable register %0027 %0017 r/w chip version id register %0020 %00ff ro register name i/o address access asci control register a ch 0 %0000 r/w asci control register a ch 1 %0001 r/w asci control register b ch 0 %0002 r/w asci control register b ch 1 %0003 r/w asci status register ch 0 %0004 r/w asci status register ch 1 %0005 r/w asci tx data register ch 0 %0006 r/w asci tx data register ch 1 %0007 r/w asci rx data register ch 0 %0008 r/w asci rx data register ch 1 %0009 r/w csi/o control register %000a r/w csi/o tx/rx data register %000b r/w timer data register ch ol %000c r/w timer data register ch oh %000d r/w reload register ch ol %000e r/w reload register ch oh %000f r/w timer control register %0010 r/w timer prescale register %0011 r/w asci0 extension control register %0012 r/w asci1 extension control register %0013 r/w
Z80382/z8l382 high-performance data communications processors zilog 70 p r e l i m i n a r y ds97z382000 Z80382 asci, prt, csio, wdt registers (continued) port and new Z80382 registers timer data register ch 1l %0014 r/w timer data register ch 1h %0015 r/w reload register ch 1l %0016 r/w reload register ch 1h %0017 r/w asci0 time constant low %001a r/w asci0 time constant high %001b r/w asci1 time constant low %001c r/w asci1 time constant high %001d r/w wdt master register %0028 r/w wdt command register %0029 wo register name i/o address access iocs1 low register %002a r/w iocs1 high register %002b r/w iocs2 low register %002c r/w iocs2 high register %002d r/w ram low register %002e r/w ram high register %002f r/w rom low register %0030 r/w rom high register %0031 r/w memory mode register 1 %0032 r/w memory mode register 2 %00d3 r/w system contguration register %0036 r/w pin multiplexing register %0037 r/w asci0 dma control register %0038 r/w asci1 dma control register %0039 r/w output drive control register %003a r/w int3-1 control register %003b r/w port a data register %00ee r/w port a data direction register %00ed r/w port b data register %00e5 r/w port b data direction register %00e4 r/w port c data register %00de r/w port c data direction register %00dd r/w port d data register %00e8 r/w port d data direction register %00e7 r/w register name i/o address access
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 71 1 dma registers register name i/o address access dma control register %003e r/w dma vector register %003f r/w dma0 list address register low* %0040 r/w dma0 list address register middle* %0041 r/w dma0 list address register high* %0042 r/w dma0 control/status register %0043 r/w dma1 list address register low* %0044 r/w dma1 list address register middle* %0045 r/w dma1 list address register high* %0046 r/w dma1 control/status register %0047 r/w dma2 list address register low* %0048 r/w dma2 list address register middle* %0049 r/w dma2 list address register high* %004a r/w dma2 control/status register %004b r/w dma3 list address register low* %004c r/w dma3 list address register middle* %004d r/w dma3 list address register high* %004e r/w dma3 control/status register %004f r/w dma4 list address register low* %0050 r/w dma4 list address register middle* %0051 r/w dma4 list address register high* %0052 r/w dma4 control/status register %0053 r/w dma5 list address register low* %0054 r/w dma5 list address register middle* %0055 r/w dma5 list address register high* %0056 r/w dma5 control/status register %0057 r/w dma6 list address register low* %0058 r/w dma6 list address register middle* %0059 r/w dma6 list address register high* %005a r/w dma6 control/status register %005b r/w dma7 list address register low* %005c r/w dma7 list address register middle* %005d r/w dma7 list address register high* %005e r/w dma7 control/status register %005f r/w note: * these addresses can be selected to access the buffer address and buffer length register for testing.
Z80382/z8l382 high-performance data communications processors zilog 72 p r e l i m i n a r y ds97z382000 hdlc registers gci/scit registers register name i/o address access hdlc vector register %003d r/w hdlc0 transmit mode register %0060 r/w hdlc0 transmit interrupt register %0061 r/w hdlc0 transmit control/status %0062 r/w hdlc0 transmit fill register %0063 r/w hdlc0 receive mode register %0064 r/w hdlc0 receive interrupt register %0065 r/w hdlc0 counter access port %0066 r/w hdlc0 dma select register %0067 r/w hdlc1 transmit mode register &0068 r/w hdlc1 transmit interrupt register %0069 r/w hdlc1 transmit control/status register %006a r/w hdlc1 transmit fill register %006b r/w hdlc1 receive mode register %006c r/w hdlc1 receive interrupt register %006d r/w hdlc1 counter access port %006e r/w hdlc1 dma select register %006f r/w hdlc2 transmit mode register %0070 r/w hdlc2 transmit interrupt register %0071 r/w hdlc2 transmit control/status register %0072 r/w hdlc2 transmit fill register %0073 r/w hdlc2 receive mode register %0074 r/w hdlc2 receive interrupt register %0075 r/w hdlc2 counter access port %0076 r/w hdlc2 dma select register %0077 r/w register name i/o address access gci control register %00c0 r/w gci status register 1 %00c1 ro gci status register 2 %00c2 r/w gci interrupt enable register %00c3 r/w mon0 transmit data register %00c4 wo mon0 receive data register %00c4 ro mon1 transmit data register %00c5 wo mon1 receive data register %00c5 ro c/i0 transmit data register %00c6 wo c/i0 receive data register %00c6 ro c/i1 transmit data register %00c7 wo c/i1 receive data register %00c7 ro
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 73 1 Z80382 mimic registers register name i/o address access host mmc mimic master control register %00ff r/w none ius/ip interrupt pending %00fe r/wb7 none ie interrupt enable %00fd r/w none ivec interrupt vector %00fc r/w none rtcr receive time constant %00fb r/w none ttcr transmit time constant %00fa r/w none dlm divisor latch (msbyte) %00f9 ro %01, dlab=1, r/w dll divisor latch (lsbyte) %00f8 ro %00, dlab=1, r/w scr scratch register %00f7 ro %07, r/w msr modem status register %00f6 r/wb7-4 %06, ro lsr line status register %00f5 r/wb6432 %05, ro mcr modem control register %00f4 ro %04, r/w lcr line control register %00f3 ro %03, r/w ier interrupt enable register %00f1 ro %01, dlab=0, r/w rbr receiver buffer register %00f0 wo %00, dlab=0, ro thr transmitter holding register %00f0 ro %00, dlab=0, wo mimic dma control register %00ef r/w none fscr fifo status and control register %00ec r/w7-4 none tttc transmitter timeout time constant register %00eb r/w none rttc receiver timeout time constant register %00ea r/w none iir interrupt identitcation register none none %02, ro fcr fifo control register %00e9 ro %02, ro mimic moditcation register %00e9 wo none host dma control register %00e6 r/w none mimic brg high constant register %00e1 r/w mimic brg low constant register %00e0 r/w iobrg register %00d6 r/w host i/o status register %00d5 w bit1/r base + 10b r host dma mailbox control register %00d2 r/w none host dma transmit register 1 %00d1 ro /hdak1, /hwr lo (note) host dma receive register 1 %00d1 wo /hdak1, /hrd lo host dma transmit register 0 %00d0 ro /hdak0, /hwr lo host dma receive register 0 %00d0 wo /hdak0, /hrd lo
Z80382/z8l382 high-performance data communications processors zilog 74 p r e l i m i n a r y ds97z382000 pcmcia memory and registers plug and play isa registers register name i/o address access host low attribute memory %0100-177 r/w attr 00-ee even base address registers 0-6 %0178-17e r/w attr f0-fc even z80 control register %017f r/w none contguration option register %0180 r/w attr 100 contguration status register %0181 r/w attr 102 pin replacement register %0182 r/w attr 104 socket copy register %0183 r/w attr 106 extended status register %0184 r/w attr 108 image base address registers %0185,6 r/w attr 10a, c version number register %0187 r/w attr 10e high attribute memory %0188-1ff r/w attr 110-1fe even register name i/o address access host pnp address register none i/o %0279, wo pnp write data register none i/o %0a79, wo pnp read data register none i/o %0203-3ff, ro read address register none pnp %00, wo isolation register none pnp %01, ro contguration control register none pnp %02, wo wake register none pnp %03, wo pnp master register %0102 r/w none resource data register %0104 wo pnp %04, ro pnp status register %0105 ro pnp %05, ro card select number (csn) register %0106 ro pnp %06, r/w logical device number register none pnp %07, ro activate register %0130 r/w pnp %30, r/w i/o range check register none pnp %31, r/w i/o mailbox base address registers %0160,1 r/w pnp %60,1, r/w mimic base address registers %0162,3 r/w pnp %62,3, r/w interrupt request level register %0170 r/w pnp %70, r/w dma channel 0,1 registers %0174,5 r/w pnp %74,5, r/w
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 75 1 package information figure 38. 144-lead qfp package diagram
Z80382/z8l382 high-performance data communications processors zilog 76 p r e l i m i n a r y ds97z382000 package information (continued) figure 39. 144-lead vqfp package diagram
Z80382/z8l382 zilog high-performance data communications processors ds97z382000 p r e l i m i n a r y 77 1 ordering information package f = qfp (plastic quad flatpack) a = vqfp (very small qfp) temperature s = 0 to +70 c speeds 10 = 10 mhz 20 = 20 mhz environmental c = plastic standard example: ? 1997 by zilog, inc. all rights reserved. no part of this document may be copied or reproduced in any form or by any means without the prior written consent of zilog, inc. the information in this document is subject to change without notice. devices sold by zilog, inc. are covered by warranty and patent indemnification provisions appearing in zilog, inc. terms and conditions of sale only. zilog, inc. makes no warranty, express, statutory, implied or by description, regarding the information set forth herein or regarding the freedom of the described devices from intellectual property infringement. zilog, inc. makes no warranty of merchantability or fitness for any purpose. zilog, inc. shall not be responsible for any errors that may appear in this document. zilog, inc. makes no commitment to update or keep current the information contained in this document. zilog?s products are not authorized for use as critical components in life support devices or systems unless a specific written agreement pertaining to such intended use is executed between the customer and zilog prior to use. life support devices or systems are those which are intended for surgical implantation into the body, or which sustains life whose failure to perform, when properly used in accordance with instructions for use provided in the labeling, can be reasonably expected to result in significant injury to the user. zilog, inc. 210 east hacienda ave. campbell, ca 95008-6600 telephone (408) 370-8000 fax 408 370-8056 internet: http://www.zilog.com part number v dd clock speed (1) package type package code oper. temp. Z8038220asc 5v 10% 20 mhz vqfp mkt71c1173-00 0 to +70 c Z8038220fsc 5v 10% 20 mhz qfp mkt71c1163-00 0 to +70 c z8l38210asc 3.3v 10% 10 mhz vqfp mkt71c1173-00 0 to +70 c z8l38210fsc 3.3v 10% 10 mhz qfp mkt71c1163-00 0 to +70 c note: 1. refers to maximum internal bus clock frequency. see ac specifications for maximum external clock speed. z 80382 20 f s c environmental flow temperature package speed product number zilog pretx is a Z80382, 20 mhz, qfp, 0 to +70 c, plastic standard flow


▲Up To Search▲   

 
Price & Availability of Z80382

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X